Maison  >  Questions et réponses  >  le corps du texte

javascript - 前端跨域拿数据的问题

有一个接口,GET请求后返回的数据格式是

[
  {key:value},
  {key:value},
  ...
  {key:value}
]

这样的json数组形式.
现在要求不改动接口的情况下,前端去跨域拿数据.
网上查了下,动态script不行,window.name也不行,怎么做?


JSONP不行啊,用JSONP接口也得改,前端除了CORS没别的办法了么?

PHP中文网PHP中文网2748 Il y a quelques jours458

répondre à tous(7)je répondrai

  • 巴扎黑

    巴扎黑2017-04-10 16:21:07

    最简单的办法还是用jsonp的形式去做 多第一个回调方法名 给了得话就用js函数的方法给数据

    http://www.uedsc.com/access-control-allow-origin.html 或者看看这个

    répondre
    0
  • 大家讲道理

    大家讲道理2017-04-10 16:21:07

    jsonp取到数据后 把 取到的数据转换下就ok 了啊
    这个接口URL允许被跨域取得数据的话就可以OK
    如果接口不允许,那也只能呵呵了

    répondre
    0
  • PHPz

    PHPz2017-04-10 16:21:07

    不改动接口的话 有点无能为力了

    web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀)

    。所以要前段用jsonp,后端接口也是要改的

    répondre
    0
  • 巴扎黑

    巴扎黑2017-04-10 16:21:07

    这个问题是关于跨域的,跟服务端接口没关系对吧,js直接改用jsonp吧

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-10 16:21:07

    后端做下转发,服务端帮你获取了再转给前端

    répondre
    0
  • 迷茫

    迷茫2017-04-10 16:21:07

    还是用动态script

    répondre
    0
  • 阿神

    阿神2017-04-10 16:21:07

    CORS还是要去服务端做设置,发送响应头回来~~
    建议还是修改下后端GET请求的处理接口吧
    简单地判断下是否有callback参数,
    如果有那么返回符合JSONP处理格式的
    如果没有,返回JSON格式的数据

    这样能提供更好地兼容性

    répondre
    0
  • Annulerrépondre