Heim  >  Artikel  >  Web-Frontend  >  Ausführliche Erläuterung der Schritte zum Übergeben von JSON-Parametern in der $http-Methode

Ausführliche Erläuterung der Schritte zum Übergeben von JSON-Parametern in der $http-Methode

php中世界最好的语言
php中世界最好的语言Original
2018-05-08 11:09:553700Durchsuche

Dieses Mal erkläre ich Ihnen ausführlich die Schritte zum Übergeben von JSON-Parametern über die $http-Methode. Was sind die Vorsichtsmaßnahmen für das Übergeben von JSON-Parametern über die $http-Methode? , lass uns einen Blick darauf werfen.

Die Details lauten wie folgt:

1. Der Standardtyp der von der $http POST-Methode übermittelten Daten ist application/json

var data = {'wid':'0', 'praise' : '25'}; 
$http.post(url, data).success(function(result) { 
 // 
});

Die letzte gesendete Anfrage lautet:

POST http://www.example.com HTTP/1.1 
Content-Type: application/json;charset=utf-8 
 
{'wid':'0','praise':'25'}

Die Standardmethode kann das JSON-Objekt direkt in Form eines Strings an den Server übergeben besser geeignet für RESTful-Schnittstellen. Aber der $_POST des PHP-Skripts kann die JSON-Daten nicht aus dem Anfragetext abrufen.

Sie können Folgendes verwenden:

$data = file_get_contents("php://input"); //获得原始输入流

Hinweis: php://input ist ungültig, wenn enctype="multipart/form-data"

Nachdem Sie den ursprünglichen Eingabestream der Anfrage erhalten und ihn dann entsprechend verarbeitet haben, können Sie die JSON-Daten abrufen.

2. Verwenden Sie x-www-form-urlencoded, um die JSON-Daten zu übermitteln

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));

Die endgültige Anfrage wurde gesendet Es ist:

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln Artikel auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Vue bietet vollständige Auswahl- und Umkehrauswahlfunktionen

So implementieren Sie Observer in Vue

So ändern Sie iview in der Element-UI-Baumbaumsteuerung von vue.js

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Schritte zum Übergeben von JSON-Parametern in der $http-Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn