Rumah >hujung hadapan web >tutorial js >JSON lwn JSONP: Apakah Perbezaan Utama dalam Format, Jenis Fail dan Kes Penggunaan?

JSON lwn JSONP: Apakah Perbezaan Utama dalam Format, Jenis Fail dan Kes Penggunaan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-28 22:49:13750semak imbas

JSON vs. JSONP: What are the Key Differences in Format, File Type, and Use Cases?

JSON lwn. JSONP: Format, Jenis Fail dan Aplikasi Praktikal

Apakah sebenarnya JSONP?

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

Perbezaan Format

Data JSON biasanya disimpan sebagai rentetan, manakala JSONP dikapsulkan dalam panggilan fungsi . Ini membolehkan ia dimuatkan sebagai fail skrip.

Perbezaan Jenis Fail

Kedua-dua JSON dan JSONP berkongsi sambungan fail ".json".

Perbezaan Penggunaan Praktikal

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!

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