JSONP: Mendayakan Komunikasi JSON Merentas Domain
Komunikasi JSON merentas domain menimbulkan cabaran kerana Dasar Asal Sama. JSONP (JSON with Padding) telah diperkenalkan sebagai penyelesaian kepada masalah ini.
Mencipta JSONP Callback API
Untuk mencipta JSONP callback API, anda perlu:
Contoh dalam PHP:
<code class="php"><?php $data = '{}'; if (array_key_exists('callback', $_GET)) { header('Content-Type: text/javascript; charset=utf8'); header('Access-Control-Allow-Origin: http://www.example.com/'); $callback = $_GET['callback']; echo $callback . '(' . $data . ');'; } else { header('Content-Type: application/json; charset=utf8'); echo $data; } ?></code>
Kod ini menghantar fail JavaScript yang memanggil fungsi panggil balik yang ditentukan dengan data JSON sebagai hujah pertama.
Menggunakan Perkhidmatan JSONP
Untuk menggunakan perkhidmatan JSONP:
Contoh:
<code class="html"><script> function receiver(data) { console.log(data); } </script> <script src="data-service.php?callback=receiver"></script></code>
Atas ialah kandungan terperinci Bagaimana untuk Mengatasi Komunikasi JSON Merentas Domain dengan JSONP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!