或者
问答详情页顶部banner图
您的位置:首页 >推广 > 其他 > 其他 > 如何解决跨域无法正常请求问题

如何解决跨域无法正常请求问题

提问者:luckyer  |   分类:其他  |   浏览45次  |   悬赏分:3积分 2017-04-04 09:37:04

我要回答

提 交

匿名

  • 娟子

    方法1: 该方法不同于ajax,因为script标签不受同源策略的限制。 前端和后台需要约定一个接收参数, 然后返回一段js代码。 后端php代码: 复制代码 //动态创建一个script function loadScript(url, data, fun) { var head = document.head || document.getElementsByName("head")[0], scriptElement = document.createElement("script"), //把传入的值设置成随机的。 funName = '_callback' + Math.round(Math.random() * 1000); //使用约定的callback为参数, fullName是传入callback参数的值 url = url + '?callback=' + funName; //把参数接到URL后面 for (var i in data) { url += '&' + i + '=' + data[i]; } scriptElement.src = url; //取到js方法后,执行该js方法。 这里要用全局的方法,所以用window[] window[funName] = function (json) { fun(json); //执行完成后删除该script和该方法 head.removeChild(scriptElement); window[funName] = null; }; scriptElement.onload = function () { scriptElement.onload = scriptElement.onreadystatechange = null; } head.appendChild(scriptElement) } //传入url, 数据, 回调函数 loadScript("https://animals-facial.c9users.io/json.php", { name: 'china' }, function (json) {     //todo something console.log(json); 输出得到的json });

    2017-05-26 15:56:24
    评论0  |   0
问答详情中间banner