2017-06-02 16 views
0

ノードjsサーバでXMLHttprequest(POST)を処理しようとしています。ノードjsサーバでのXMLHttp POST要求の処理

サーバー側:

app.use(bodyParser.urlencoded({extended:true})); 
    app.use(bodyParser.json()); 


    app.post('/count', function(request, response){ 
     console.log(request.body);  
     response.send(request.body);  
    }); 

クライアント側:

<script> 
var xmlhttp = new XMLHttpRequest(); 
var resp = "" 
xmlhttp.onreadystatechange = function() { 
if (xmlhttp.readyState==4 && xmlhttp.status==200){ 
     resp = xmlhttp.responseText; 
     resp = JSON.parse(resp); 
     document.write(resp); 
     } 
} 

var check = "Hello"; 

function show(){ 
xmlhttp.open("POST","http://localhost:3000/count", true); 
xmlhttp.send(JSON.stringify(check)); 
</script> 

Imが取得出力は、[オブジェクトのオブジェクト]私が間違っつもり

のですか?

+0

「JSON.stringify(request.body).forEach(console.log)」を試して、その内容を確認してください。 クライアントサイドで 'fetch' APIを使用すると、コードを簡単に扱うことができます:https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch – SamHH

+0

文字通りにする。私は人々がこれをどこから得ているのか分かりません。 –

+0

まず、 'document.write(resp)'を 'console.log(resp)'に置き換えてください。あなたはブラウザのコンソールに何を表示しますか? –

答えて

1

クライアント側でsetrequestheaderを追加することで問題が解決されました。

xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
関連する問題