输入错误:请求路径包含未转义字符 - npm&科尔多瓦

时间:2015-05-05 20:27:19

标签: android node.js cordova proxy

我正在尝试将Apache Cordova用于Android个应用。 我用npm安装了它,但是当我输入命令cordova platforms add android时,我有这个错误:

npm http GET https://registry.npmjs.org/cordova-android/4.0.0  
TypeError: Request path contains unescaped characters.  
    at new ClientRequest (_http_client.js:73:11)  
    at TunnelingAgent.exports.request (http.js:49:10)  
    at TunnelingAgent.createSocket (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:117:25)  
    at TunnelingAgent.createSecureSocket [as createSocket] (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:184:41)  
    at TunnelingAgent.addRequest (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:80:8)  
    at new ClientRequest (_http_client.js:154:16)  
    at Object.exports.request (http.js:49:10)  
    at Object.exports.request (https.js:136:15)  
    at Request.start (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:594:30)  
    at Request.end (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:1186:28)

我认为它来自代理,因此我设置了http-proxyhttps-proxy,如下所示:

npm config set proxy h t t p://proxydomain:port/

我设置了这样的注册表:

npm config set registry h t t p://registry.npmjs.org/

错误保持不变。我尝试从我的网络和npm删除代理,但错误仍然存​​在。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

我不知道你是否修好了。 但是几天前我遇到了同样的问题。 只需卸载并重新安装节点,我实际上已经使用node -v版本v0.12.2。

答案 1 :(得分:0)

我已升级到nodejs 0.12.3并开始遇到此问题。然后我研究并找到了一个修复程序,我在其中替换了tunnel-agent文件夹中的某些文件。此修复工作但后来我重新安装Visual Studio 2013后再次遇到相同的问题。 我删除了节点0.12.3,然后安装了0.10.29,现在它再次工作。每当我尝试安装Windows平台时,我都会收到上述错误。所以现在我使用Node JS 0.10.29运行最新的Cordova版本。我想知道我是否能够使用更新版本的节点,或者我是否应该打扰。

答案 2 :(得分:0)

来自@ geisi93 ionic-cli github

  

对于那些仍有问题的人 - 可能你必须更换   

的内容      

C:\用户{USERNAME} \应用程序数据\漫游\ NPM \ node_modules \科尔多瓦\ node_modules \科尔多瓦-LIB \ node_modules \请求\ node_modules \隧道剂

     

带有此zip内容的内容:

     

https://github.com/mikeal/tunnel-agent