vue的vue-resource,用jsonp调用接口返回错误,浏览器能得到数据,为什么

getanci(data) {
      this.$http.jsonp('http://data1.library.sh.cn/gj/webapi/instances', {
        params: {
          key: 'xxxx',
          title: '三国'
        }
      },
      {}).then((response) => {
        console.log(response)
      })
        .catch(err => {
          console.log(err)
        })
    }
//  浏览器去访问,可以得到数据        http://data1.library.sh.cn/gj/webapi/instances?title=%E4%B8%89%E5%9B%BD&key=xxxx
//  vue去访问,返回参数错误        http://data1.library.sh.cn/gj/webapi/instances?title=%E4%B8%89%E5%9B%BD&key=xxxx&callback=_jsonpfda1ln7gros

请问技术大牛是什么原因,怎么修改呢

阅读 2.5k
1 个回答

你确定这货支持jsonp?
jsonp返回的应该是

callbackName({json: {}});

本质上返回的是javascript代码,与模块打包器的基本原理一样。

但是这货返回的是json字符串,不支持callback的函数名,你获得不到内容。
这个需求后端做个代理吧。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题