2016-11-08 75 views
2

我正在使用Watson Node.js SDK https://www.npmjs.com/package/watson-developer-cloud向Watson Conversation服务发送消息,但我身后有一个http代理服务器,无法访问Watson服务。我们如何配置代理详细信息(在Node.js的内部或外部),以便可以进行出站API调用?使用Node.js从代理服务器后面调用Watson Conversation API

var Watson = require('watson-developer-cloud/conversation/v1'); // watson sdk 

// Create the service wrapper 
var conversation = new Watson({ 
    username: '<username>', 
    password: '<password>', 
    url: 'https://gateway.watsonplatform.net/conversation/api', 
    version_date: '2016-09-20', 
    version: 'v1' 
}); 

conversation.message(payload, function(err, data) { 
... 
}); 

回答

1

不完全确定这一点,但你可以设置http_proxy的环境变量?我相信这应该强制使用代理,而不管开发者云模块的作用。

process.env.http_proxy = "https://YOUR_PROXY_HOST:YOUR_PROXY_PORT"; 

如果这样的作品,你应该设置使用变量:

npm set <key> <value> 
+0

要添加一些背景,这是因为底层请求库检查这些环境属性。请注意,HTTPS还有第二个https_proxy变量。文档位于https://github.com/request/request#controlling-proxy-behaviour-using-environment-variables –

相关问题