JSONP, atau JSON dengan padding, ialah versi lanjutan JSON yang membenarkan permintaan AJAX merentas tapak. Ia terdiri daripada rentetan yang disertakan dalam kurungan, seperti yang dilihat dalam contoh di bawah:
//JSON {"name":"stackoverflow","id":5} //JSONP func({"name":"stackoverflow","id":5});
Data JSON biasanya disimpan sebagai rentetan, manakala JSONP dikapsulkan dalam panggilan fungsi . Ini membolehkan ia dimuatkan sebagai fail skrip.
Kedua-dua JSON dan JSONP berkongsi sambungan fail ".json".
AJAX Rentas Tapak: JSONP membenarkan Permintaan AJAX antara domain yang berbeza. Ini dicapai dengan menyediakan fungsi untuk mengendalikan data JSON sebaik sahaja fail skrip selesai dimuatkan.
Sebagai contoh, jika example.com menyediakan fail JSONP dalam format yang ditunjukkan sebelum ini, anda boleh menggunakan kod berikut untuk dapatkan semula data daripada domain itu, walaupun tapak web anda tidak dihoskan di example.com:
function func(json){ alert(json.name); } var elm = document.createElement("script"); elm.setAttribute("type", "text/javascript"); elm.src = "http://example.com/jsonp"; document.body.appendChild(elm);
Atas ialah kandungan terperinci JSON lwn JSONP: Apakah Perbezaan Utama dalam Format, Jenis Fail dan Kes Penggunaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!