javascript - js跨域请求

 崔颖2849464 发布于 2022-11-28 07:34
后端json格式化如下{"code":"100","msg":"\u7b7e\u540d\u9519\u8bef\uff01","data":[]}不是callback({"code":"100","msg":"\u7b7e\u540d\u9519\u8bef\uff01","data":[]})前端真么跨域请求才能顺利取到json
8 个回答
  • 前端无法处理的,让后端解决吧
    解决跨域的问题思路
    1.赋值法vardata=...,用script标签引入获得全局变量
    2.json地址和页面地址同源
    3.设置cors
    4.返回jsonp格式比如输出callback(data)..

    2022-11-28 07:52 回答
  • 解析jsonp或者后端设置CORS,后者比较好使,只需要加header属性

    2022-11-28 07:52 回答
  • CORS

    2022-11-28 07:52 回答
  • jsonp应该只能适合get方式请求数据吧还是用cors吧

    2022-11-28 07:52 回答
  • 设置cors吧,后端只需要在头部中添加一行Access-Control-Allow-Origin就可以解决这个问题

    2022-11-28 07:52 回答
  • 跨域Ajax首选的是jsonp。如果后端给定的只是一个字面量形式的数据,前端是不能解析的,只能通过后端程序进行二次加工后才能解析。so,题主的{**}这样的字面量形式如果返回给前端处理只能说明一下两个问题:

    • 后端偷懒了,并没有加工数据

    • 后端故意刁难前端
      所以,祝题主好运了

    2022-11-28 07:52 回答
  • 一般跨域有两种方法JSONP和CORS。

    如果不需要兼容旧浏览器(IE8以下),建议用CORS,因为这样才能用GET以外的方法,而且不会有XSS(跨站脚本攻击)的风险。

    CORS需要在服务器上配置,不同服务器的配置方法不同。
    如果要兼容IE8-9,还需在页面使用XDomainRequest对象。

    原理可以参考这篇

    2022-11-28 07:52 回答
  • 后端应该返回jsonp,即json数据包上一层callback函数
    比如callback({"code":"100","msg":"u7b7eu540du9519u8befuff01","data":[]})
    ajax:

    $.ajax({type:"GET",data:{opid:id,u:u},url:window.VotePostAjax,dataType:"jsonp",jsonp:'callback',jsonpCallback:"jsonpCallback",success:function(data){},error:function(err){}})
    2022-11-28 07:52 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有