我想使用本机ajax在我的node.js服务器中进行一些调用。
这安全吗?我能没有问题吗?
以下为例:
.... NODE
app.post('/postReceptor', function(req, res, next) {
var data1 = req.body['input1'];
var data2 = req.body['input2'];
var xhr;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
xhr = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
try {
xhr = new ActiveXObject('Msxml2.XMLHTTP');
}
catch (e) {
try {
xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
catch (e) {}
}
}
xhr.open('GET', encodeURI('HTTP://WWW.WEBSITE.COM'), true);
xhr.send(null);
xhr.onreadystatechange = function() {
if(xhr.readyState === 4) { // done
if(xhr.status === 200) { // complete
res.render('renderPage', {
sendingData: xhr.responseText
});
}
}
};
});
这是为了验证外部页面客户端发送的一些客户数据!
谢谢!
答案 0 :(得分:1)
执行AJAX调用是一个源自客户端的概念,您在服务器中,因此您没有在Node.JS上使用XMLHttpRequest
函数。
因此,要从Node.JS发出HTTP请求,您可以使用http.request或使用request之类的其他库来帮助您进行无复杂的编码,以下是使用request的示例库:
var request = require('request');
var URL = 'http://www.google.com';
request(URL, function(error, response, body) {
if (!error && response.statusCode === 200) {
console.log(body);
}
});
答案 1 :(得分:0)
感谢您的回答。我使用库https://www.npmjs.com/package/xmlhttprequest
得到了问题的答案Risto Novik,这是一个简单的例子,当然我必须验证字段!