Javascript 使用node.js的HTTPS请求?
我需要在node.js应用程序中触发一个请求。我的应用程序有一个路由,当它运行时,我试图点击一个动态构建的url。所以我只需要触发一个RESt API调用,如下所示:Javascript 使用node.js的HTTPS请求?,javascript,node.js,express,Javascript,Node.js,Express,我需要在node.js应用程序中触发一个请求。我的应用程序有一个路由,当它运行时,我试图点击一个动态构建的url。所以我只需要触发一个RESt API调用,如下所示: ”https://www.domainname.com/sometext/“+var1+”/someothertext“ 所以我试了一下: var options = { host: 'www.domainname.com', port: 80, path: '/1.0/'+var1, method
”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) {
.......
});
var options = {
url: "https://www.domainname.com/sometext/"+ var1 +"/someothertext"
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
console.log(response.statusCode);
});
当我运行此命令时,会出现以下错误:
options.uri是必需的参数
因此,我的目标是触发命中动态构建url的请求。如果我有一个可以插入请求的静态url,它就可以正常工作
事实上,我试图这样做:
request("https://www.domainname.com/1.0/456", function(err,response,body) {
.......
});
这个很好用
但是我试图用var1动态地构建url(路径),但这不起作用
有关于如何执行此操作的建议吗?因为请求获取的
选项
参数没有被赋予正确的格式化对象
您收到的错误是因为您需要发送url或uri
作为选项。这可以在这里澄清:
以下操作应满足您的要求:
所以我试了一下:
var options = {
host: 'www.domainname.com',
port: 80,
path: '/1.0/'+var1,
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
.......
});
var options = {
url: "https://www.domainname.com/sometext/"+ var1 +"/someothertext"
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
console.log(response.statusCode);
});
因为请求采用的
options
参数没有被赋予正确的格式化对象
您收到的错误是因为您需要发送url或uri
作为选项。这可以在这里澄清:
以下操作应满足您的要求:
所以我试了一下:
var options = {
host: 'www.domainname.com',
port: 80,
path: '/1.0/'+var1,
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
.......
});
var options = {
url: "https://www.domainname.com/sometext/"+ var1 +"/someothertext"
method: 'GET'
};
// trigger request
request(options, function(err,response,body) {
console.log(response.statusCode);
});
在作为
请求
函数的第一个参数传递的选项中需要URL或URI
以及请求的原因(“https://www.domainname.com/1.0/456,函数(错误、响应、正文){
没有失败是因为您提供了url作为第一个参数
因此,将您的选项
对象更改为
var options = {
url: 'https://www.domainname.com/sometext/'+ var1,
port: 80,
method: 'GET'
};
您可以尝试修剪var1
中的值,如
var1=var1.替换(/^\s*\s*$/g')
这应该会删除空格。在选项中需要一个URL或URI,作为
请求
函数的第一个参数传递
以及请求的原因(“https://www.domainname.com/1.0/456,函数(错误、响应、正文){
没有失败是因为您提供了url作为第一个参数
因此,将您的选项
对象更改为
var options = {
url: 'https://www.domainname.com/sometext/'+ var1,
port: 80,
method: 'GET'
};
您可以尝试修剪var1
中的值,如
var1=var1.替换(/^\s*\s*$/g')
这应该删除空间。
我可能不会使用这个叉,介意。它一年都没有被触摸过。使用实际的NPM模块或Mikar的存储库。我可能不会使用这个叉,介意。它一年都没有被触摸过。使用实际的NPM模块或Mikar的存储库。空白空间仍然存在。我认为问题在+中。在连接中使用的符号,不一定在var1值中…还不确定如何修复该问题。请尝试options.url=options.url.replace(/^\s*|\s*$/g',)并查看它是否对我起作用。谢谢。它删除了我过去得到的空白空间。空白空间仍然存在。我认为问题是在使用的+符号中使用连接,而不一定是在VAR1值中……不确定如何修复那个。尝试“代码> opop.URL=选项。URL。替换(/s**\**$/g,''))。<代码>,看看它是否对我有用。谢谢。它删除了我过去得到的空白空间。