我正在学习nodejs,并建立了一个简单的网站来学习处理POST请求。
这是我的代码:
浏览器侧:
function sendRequest (params) {
var xhr = new XMLHttpRequest();
var url = 'result';
xhr.open("POST",url,true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
console.log('onreadystatechange');
if(xhr.readyState == 4 && xhr.status == 200){
console.log('Response text:' + xhr.reponseText);
}
}
xhr.send(params);
}
服务器端:
else if (req.url === '/result') {
req.on('data', function (data) {
var params = data.toString().split('&');
var result = calc(params);
console.log(result.toString());
res.writeHead(200,{'Content-Type':'text/plain'});
res.write('<div>'+result.toString()+'</div>');
res.end();
console.log('Response over');
});
}
当我运行此操作时,xhr.responseText
为undefined
,并且我无法理解错误的位置。
根据日志,节点获取请求,结果正确,xhr.onreadystatechange
也运行(但xhr.responseText
未定义)。
答案 0 :(得分:1)
浏览器端代码中存在输入错误。你拼错了responseText
。
console.log('Response text:' + xhr.responseText);