jsonp跨域
服务端
1 2 3 4 5 6 7 8 9 10 11
| var http = require('http'); var url = require('url');
http.createServer(function(req, res) { res.writeHead(200, {'Content-Type': 'text/plain'});
var params = url.parse(req.url, true).query; res.end(params.jsonpCallback + "('This is JSONP.')"); }).listen(8888);
|
本地
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <script> var cb = function(data) { var oDiv = document.getElementById('content'); oDiv.innerHTML = data; }
var url = 'http://localhost:8888?jsonpCallback=cb';
var script = document.createElement('script'); script.src = url;
document.body.appendChild(script); </script>
|
jquery中使用jsonp
服务端代码不变
本地
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| var oDiv = document.getElementById('content');
var cb = function() {};
$.ajax({ url: 'http://localhost:8888', type: 'get', dataType: 'jsonp', jsonp: 'A_callback', jsonpCallback: 'cb', cache: true, success: function(data) { console.log(data); oDiv.innerHTML = data; } });
|
jsonp的缺点
JSONP 的主要缺点有两个:
一、是只能 GET 不能 POST,因为是通过
原文作者: Burgess
原文链接: https://qiyaozu.github.io/2019/06/10/mianshi/
版权声明: 转载请注明出处(必须保留作者署名及链接)