jquery 请求access_token, restAPI总是有跨域问题
吼凨 发布于2016-03 浏览:3242 回复:6
0
收藏

详细如下:

1、 console.log('token click')

    $.ajax({

      url: 'https://openapi.baidu.com/oauth/2.0/token',

      dataType: 'json', 

      data: {

        format: 'json',

        grant_type: 'client_credentials', 

        client_id: 'm8mVC***********LSPUjhXE',

        client_secret: '53c639*************9254fb343003'

        // scope: 'public'

      },

      success: function(data) {

        JSON.parse(data)

        // var token = data.access_token

        // console.log(data)

      }

    })

这个有跨域问题。。。


2、dataType: 'jsonp'
解决跨域问题了,但是浏览器会报错,Uncaught SyntaxError: Unexpected token :

猜想是Jquery默认需要jsonCallbacck(....) 格式,但是返回的是JSON格式。。

请问这个这么解决???



收藏
点赞
0
个赞
共6条回复 最后由用户已被禁言回复于2022-04
#7用户已被禁言回复于2019-07
#6 gonnagetaway回复
楼主最后是怎么解决的呀?

您好,请参照官方demohttps://github.com/Baidu-AIP/speech-demo

0
#6gonnagetaway回复于2019-07

楼主最后是怎么解决的呀?

0
#5xie_yongkang回复于2017-04

您好, 可参考rest api调用的demo程序修改, 谢谢。

0
#4pusajiezi回复于2017-04

请问问题解决了吗?

0
#3吼凨回复于2016-03

这是我之前的写法:
JSONP是JS跨域的hacker写法,是伪跨域的,需要服务器端配合返回回调,而且参数是JSON格式。

目前使用JSONP区域访问,response 200 OK,response body 可以看见数据都是OK的。,可是浏览器数据解析异常抛出,导致数据无法取得。除此之外,还有什么较好的方法可安全接受数据。
似乎RestAPI没有提供返回callback({a:x})形式的数据。

跨域方法都是需要服务器配合返回需要的格式。。不知道怎么办??

0
#2水寒319回复于2016-03

服务器返回结果都是以json格式返回请求结果,你可以通过解析json结果后转成你需要的格式。

1
TOP
切换版块