我还是Node Js
的新手。请帮帮我。
我正在调用一个Web服务,根据其结果,我需要调用另一个Web服务。代码如下,但是,我不知道如何调用第二个Web服务(例如:foo()
)。
第二种方法(调用第二个Web服务)接受2个参数:
我需要调用Web服务'https://somenew.com/v1/'
,并且还需要将以下内容作为标头传递:
`Content-Type : application/json`
然后身体我需要传递以下属性:
"name": "My name is alex",
"gender": ["All"],
"Subject": "french",
"Body": "men",
"arrayOfLikes": {"sf": "tennis"}
//第一种方法
app.post('/createthehospital/',function(req,res){
var hos = req.body;
Hos.create(hos, function(err,hos){
if(err){
// Do nothing
} else {
foo('Subject', 'Body'); // CALLING NEW METHOD
}
}
})
});
//第二种方法
function foo(subject,body) {
app.post('https://somenew.com/v1/',function(req,res){
});
}
答案 0 :(得分:1)
您需要使用request模块
var request = require('request');
request.post({
url: 'https://somenew.com/v1/',
headers: {
'content-type': 'application/json',
},
json: {
"name": "My name is alex",
"gender": ["All"],
"Subject": "french",
"Body": "men",
"arrayOfLikes": {
"sf": "tennis"
}
}
}, function(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // your response body
}
})

您所犯的错误使用快速实例 app 来调用外部网址,这是不可能使用上述模块执行此操作。