Post メソッドを使用して json パラメーターを渡す方法は何ですか?

php中世界最好的语言
リリース: 2018-05-03 09:27:16
オリジナル
9269 人が閲覧しました

今回は、Post メソッドを使用して json パラメータを渡す方法と、Post メソッドを使用して json パラメータを渡すための注意事項を紹介します。以下は実際のケースです。

詳細は次のとおりです:

1. $http POST メソッドによって送信されるデータのデフォルトのタイプは application/json です

var data = {'wid':'0', 'praise' : '25'}; 
$http.post(url, data).success(function(result) { 
 // 
});
ログイン後にコピー

送信される最終リクエストは次のとおりです:

POST http://www.example.com HTTP/1.1 
Content-Type: application/json;charset=utf-8 
 
{'wid':'0','praise':'25'}
ログイン後にコピー
デフォルトのメソッドは次のとおりです。 json オブジェクトを直接変換します。これは、RESTful インターフェイスにより適した

string の形式でサーバーに渡されます。ただし、PHP スクリプトの $_POST はリクエストボディから JSON データを取得できません。

この時点で使用できます:

$data = file_get_contents("php://input"); //获得原始输入流
ログイン後にコピー

注: enctype="multipart/form-data" の場合、php://input は無効です

リクエストの元の入力ストリームを取得し、それに応じて処理します.jsonデータ。

2. x-www-form-urlencoded メソッドを使用して json データを送信します

app.factory("Comment",function($http){
 return {
  get : function(commentFileUrl) {
   return $http({
    method: "GET",
    url: commentFileUrl,
    params: {R:Math.random()},
    headers: {'Cache-Control':'no-cache'}
   });
  },
  //保存一个评论
  save : function(toUrl,saveFileUrl,Data) {
   $http({
    method: "POST",
    url: toUrl,
    data: {saveUrl:saveFileUrl,commit:Data},
    headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
    transformRequest: function(obj) {
     var str = [];
     for (var p in obj) {
      str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
     }
     return str.join("&");
    }
   }).success(function(data){
    console.log("数据已保存!");
   }).error(function(data) {
    alert("数据保存失败,错误信息:" + JSON.stringify({data:data}));
   });
  }
 }
});
var updateClickRate={'wid':'0','click_rate':'87'};
Comment.save("php/updateWork.php","../userdata/work_content.json",JSON.stringify(updateClickRate));
ログイン後にコピー

送信される最終リクエストは次のとおりです:

これを読んだ後はメソッドをマスターできたと思います。この記事の事例については、さらに興味深い内容については、php 中国語 Web サイトの他の関連記事にご注目ください。

推奨読書:

JS

vue.JSを使用してショッピングカートと住所の選択を行うときに混乱する点は何ですか

以上がPost メソッドを使用して json パラメーターを渡す方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート