2014-01-18 20 views
10

私はjQueryの専門家ではありません。ここでは、Request BodyによるjQuery JSONデータの送信を担当しないコードを示します。jQueryのRequest BodyでJSONデータを送信する方法は?

<!doctype html> 
<html lang="en"> 
<head> 
    <title>jQuery Data submitted by JSON Body Request</title> 
    <script type="text/javascript" src="jquery-1.3.2.js"></script> 
    <script type="text/javascript"> 
    $.ajax({ 
     url : "/", 
     type: "POST", 
     data: [ 
      {id: 1, name: "Shahed"}, 
      {id: 2, name: "Hossain"} 
     ], 
     contentType: "application/json; charset=utf-8", 
     dataType : "json", 
     success : function(){ 
      console.log("Pure jQuery Pure JS object"); 
     } 
    }); 

    </script> 
</head> 
<body> 
    <p> 
     Example of submission JS Object by JSON Body Request<br/> 
     Its could submitted mass amount of data by Message body<br/> 
     It's secured and faster than any data submission . 
    </p> 
</body> 
</html> 

ポストソースが登場:

Shahed=undefined&Hossain=undefined 

しかし、ポストソースがある希望:

[{"id":1,"name":"Shahed"},{"id":2,"name":"Hossain"}] 

私は、各リクエストボディのために必要なポストソースを取得するにはどうすればよいですか?

+0

質問が不明確 –

+1

まず、オブジェクトではなくjsonデータを実際に提出する必要があります。 –

+0

Firebugデバッガに精通している場合、コンソールのすべてのタブで各要求が表示されます。投稿元を取得する場所。 Firebugコンソールは 'Post Source'に有効な' JSON' 'Request'' Body'を表示する責任があります。 –

答えて

17

ここに、あなたのアウト・プットのための正しいコードがあります。

$.ajax({ 
     url : "/", 
     type: "POST", 
     data: JSON.stringify([ 
      {id: 1, name: "Shahed"}, 
      {id: 2, name: "Hossain"} 
     ]), 
     contentType: "application/json; charset=utf-8", 
     dataType : "json", 
     success : function(){ 
      console.log("Pure jQuery Pure JS object"); 
     } 
    }); 

JSオブジェクトを文字列に変換する必要があります。JSON.stringify(JSObject)はその原因となるメソッドです。

関連する問題