Rumah >hujung hadapan web >tutorial js >Analisis perbandingan perbezaan antara $http.post dan jQuery.post dalam AngularJS_AngularJS

Analisis perbandingan perbezaan antara $http.post dan jQuery.post dalam AngularJS_AngularJS

WBOY
WBOYasal
2016-05-16 16:12:461387semak imbas

Banyak kali kita perlu menggunakan ajax untuk menyerahkan data pos Angularjs adalah serupa dengan jq dan juga mempunyai siaran terkapsul.

Tetapi siaran jQuery jelas lebih mudah dan lebih mesra pengguna daripada angularjs.

AngularJS:

Salin kod Kod adalah seperti berikut:

$http.post('do-submit.php',myData)
.success(function(){
// beberapa kod
});

jQuery:

Salin kod Kod adalah seperti berikut:

$.post('do-submit.php', myData, function() {
// beberapa kod
});

Nampak tak ada bezanya kan? Walau bagaimanapun, data yang diserahkan menggunakan $http of angularjs tidak boleh diperolehi melalui $_REQUEST/$_POST pada pelayan PHP, sebaliknya, anda perlu menggunakan:

Salin kod Kod adalah seperti berikut:

$params = json_decode(file_get_contents('php://input'),true);

untuk mendapatkannya. sebab apa?

Ini kerana kedua-dua siaran mengendalikan pengepala secara berbeza... jQuery akan mensiri myData sebagai objek JSON, contohnya:

Salin kod Kod adalah seperti berikut:

var myData = { a : 1, b : 2 };
// jQuery akan menukar myData menjadi rentetan sebelum menyiarkan data: "a=1&b=2"

Dan Angular tidak.

Apakah penyelesaiannya?

1. Perkenalkan jquery, dengan syarat pengguna sasaran tidak keberatan memuatkan puluhan skrip K tambahan. (Tidak disyorkan)

2. Dapatkan parameter pada bahagian pelayan (PHP) melalui $params = json_decode(file_get_contents('php://input'),true); satu. (Tidak disyorkan)

3. Ubah suai pemprosesan lalai $httpProvider Angular: http://victorblog.com/2012/12/20/make-angularjs-http-service-behave-like-jquery-ajax/ (Untuk memudahkan pengurusan masa hadapan, ini adalah cara terbaik)

Adakah anda mempunyai pemahaman yang lebih baik tentang perbezaan antara $http.post dan jQuery.post dalam AngularJS saya harap anda akan mendapat sesuatu daripada membaca artikel ini?

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn