搜索

首页  >  问答  >  正文

javascript - mui开发网易云音乐,请求接口总是跨域

/***************************************************************
 *                                                             *
 * mui.ajax获取数据                                                                                                                   *
 *                                                             *
/***************************************************************/
var url = 'http://s.music.163.com/search/get/';
mui.ajax(url, {
    data: {
        'type': 1,
        's': '喜欢你',
        'limit': 10
    },
    dataType: 'json',
    type: 'post',
    timeout: 10000,
    success: function(response) {
        console.log(JSON.stringify(response))
    },
    error: function(xhr, type, errorThrown) {
        console.log(type)
    }

})

用segmentfault的有个mui教程去练习的时候,在浏览器打开总是报跨域的错误,是接口不能用了么?还是其它原因

学习ing学习ing2712 天前975

全部回复(5)我来回复

  • 漂亮男人

    漂亮男人2017-06-12 09:31:21

    我找到原因了,因为我是浏览器打开的,这样会跨域,如果拿到真机上面运行就不会出现跨域问题了

    回复
    0
  • 仅有的幸福

    仅有的幸福2017-06-12 09:31:21

    跨域错误那就是网易云那边不允许跨域请求.
    你需要一个后台来转发请求

    回复
    0
  • 滿天的星座

    滿天的星座2017-06-12 09:31:21

    我之前也遇到过这样的问题,原因就是网易那边不允许跨域请求。

    回复
    0
  • 仅有的幸福

    仅有的幸福2017-06-12 09:31:21

    这是网易云的服务器在返回你的请求中没有Access-Control-Allow-Origin这个head字段,所以你的请求被浏览器砍了。

    两种解决方案:

    • 勒令网易云音乐允许你发起请求的网站跨域,也就是让他们修改服务器配置。

    • 在后端调用网易云音乐API,不通过浏览器。

    你也可用postman做测试。

    如果你能忍痛看英文,这篇文章写得非常详尽了。

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-06-12 09:31:21

    你如果只是练习的话可以关闭chrome对跨域请求的限制,这样就没有跨域问题了

    回复
    0
  • 取消回复