javascript - Cross-domain, adakah kaedah jsonp saya betul Mengapa saya terus mendapat ralat?
高洛峰
高洛峰 2017-07-05 10:41:03
0
6
732


Ini adalah laluan permintaan ajax, bukan?

Adakah kaedah silang domain saya ditulis dengan betul? Mengapa konsol terus melaporkan ralat

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

membalas semua(6)
迷茫

Uncaught SyntaxError: Token tidak dijangka: Ralat seperti ini disebabkan oleh data json yang dikembalikan tidak disertakan dalam kurungan "(" dan ")" atau tidak menambah nilai panggil balik di hadapan.

黄舟

Ada masalah dengan program pelayan, ralat pelaksanaan js

我想大声告诉你

Set jsonp参数,同时后台返回的数据需要包裹在你传的jsonppembolehubah di dalam
bahagian hadapan:

$.ajax({
    url: 'xx',
    dataType: 'jsonp',
    jsonp: 'callback',
    ....
});

Balik pentas
callback(返回的数据)

小葫芦

Tambah parameter panggil balik ke url: jsoncallback=?, program tanda soal akan menjana parameter yang sepadan secara automatik

Program hujung belakang menerima parameter ini dan membungkus data yang dikembalikan dalam fungsi panggil balik ini

eg:
PHP后端写法

$jsoncallback = $_GET['jsoncallback'];

$result = json_encode($data);

echo  $jsoncallback."(".$result.")";//后端要以这种格式返回数据才能实现跨域
exit;

Nilai pulangan anda tidak dibungkus atau fungsi panggil balik

洪涛

jsonp tidak boleh diperkenalkan oleh src dalam js dan kemudian dipanggil dalam jscallback()

滿天的星座

Untuk jsonp dalam JQ, adakah anda perlu menambah panggilan balik= dalam rentetan pertanyaan? Padang

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan