Javascript 接收到从请求库传递的参数,但它们不是';从URL发送参数时未收到
我有一个node.js服务器,我正在发出Javascript 接收到从请求库传递的参数,但它们不是';从URL发送参数时未收到,javascript,node.js,Javascript,Node.js,我有一个node.js服务器,我正在发出GET请求。 使用Python的请求和JavaScripts的请求传递的参数被正确接收 // Python requests.get(url, data=data) // JS request.get({url: url, form:form}, function(){}) 但是,当我从浏览器(如:url?a=1&b=2)发出请求时,不会收到数据 我怎么修理它 这是我用来解析表单数据的函数: function extractData(request,
GET
请求。
使用Python的请求
和JavaScripts的请求
传递的参数被正确接收
// Python
requests.get(url, data=data)
// JS
request.get({url: url, form:form}, function(){})
但是,当我从浏览器(如:url?a=1&b=2)发出请求时,不会收到数据
我怎么修理它
这是我用来解析表单数据的函数:
function extractData(request, response, callback, options) {
var jsonString = '';
request.on('data', function(data) {
jsonString += data;
});
request.on('end', function() {
data = qs.parse(jsonString);
callback(request, response, data, options);
});
}
当我从URL传递参数时,数据
为空。我希望这会有帮助,下面的代码对我有用
var options = {
host: 'services.com',
path: '/app/server.js/index/',
method: 'POST',
headers: {
'Content-Type': 'application/json; charset=utf-8',
'Content-Length': data.length
}
};
var req = https.request(options, function(res) {
var msg = '';
res.setEncoding('utf8');
res.on('data', function(chunk) {
msg += chunk;//'chunk' response from server
if(chunk != "available")
{
var mail = {
from: "abc@gmail.com",
to: "ddd@gmail.com",
subject: "Alert! from production server",
html: "<p>Hi Team,</p> <p>Alert! production server is down.</p><p>Thanks,<br/>Maintenance Team</p>"
};
transporter.sendMail(mail, function(error, response){
if(error){
console.log(error);
//res.send({ "result" : "failure" });
}else{
console.log("Message sent: " + response);
//res.send({ "result" : "success" });
}
});
}
});
res.on('end', function() {
//console.log(JSON.parse(msg));
console.log(msg);
});
var选项={
主持人:“services.com”,
路径:'/app/server.js/index/',
方法:“POST”,
标题:{
“内容类型”:“应用程序/json;字符集=utf-8”,
“内容长度”:data.Length
}
};
var req=https.request(选项、函数(res){
var msg='';
res.setEncoding('utf8');
res.on('data',函数(块){
msg+=chunk;//“chunk”来自服务器的响应
如果(区块!=“可用”)
{
var邮件={
来自:abc@gmail.com",
至:ddd@gmail.com",
主题:“来自生产服务器的警报”,
html:大家好,警报!生产服务器已关闭。谢谢,
维护团队“
};
transporter.sendMail(邮件,函数(错误,响应){
如果(错误){
console.log(错误);
//res.send({“结果”:“失败”});
}否则{
console.log(“发送的消息:+响应”);
//res.send({“result”:“success”});
}
});
}
});
res.on('end',function(){
//log(JSON.parse(msg));
控制台日志(msg);
});