[英]HTTPS request with node.js?
我需要在我的node.js应用中触发一个请求。 我的应用有一条路线,当它运行时,我尝试访问动态生成的URL。 因此,我所需要的只是触发类似于以下内容的RESTE API调用:
"https://www.domainname.com/sometext/"+ var1 +"/someothertext"
所以我尝试了这个:
var options = {
host: 'www.domainname.com',
port: 80,
path: '/1.0/'+var1,
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
.......
});
当我运行此命令时,出现此错误: options.uri is a required argument
因此,我的目标是触发命中动态生成的URL的请求。 如果我有一个静态网址,则可以插入请求,它将正常工作。
事实上,我试图这样做:
request("https://www.domainname.com/1.0/456", function(err,response,body) {
.......
});
而且效果很好。
但是我正在尝试使用var1动态地构建url(路径),但这不起作用。
关于如何做到这一点的任何建议?
在作为request
函数的第一个参数传递的选项中,您需要一个URL或URI
而request("https://www.domainname.com/1.0/456",function(err,response,body) {
不会失败的原因是因为您将url作为第一个参数提供
因此,将您的options
对象更改为
var options = {
url: 'https://www.domainname.com/sometext/'+ var1,
port: 80,
method: 'GET'
};
您可以尝试修剪var1
的值,例如var1 = var1.replace(/^\\s*|\\s*$/g, '')
;
那应该删除空间。
因为没有为请求采用的options
参数提供正确的格式化对象。
您收到的错误是因为您需要发送url or uri
作为选项。 这可以在这里澄清:
https://github.com/request/request
以下应该做您想要的:
所以我尝试了这个:
var options = {
url: "https://www.domainname.com/sometext/"+ var1 +"/someothertext"
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
console.log(response.statusCode);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.