首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XirSys $.ajax()方法返回状态400,错误:无法验证应用程序

XirSys $.ajax()方法返回状态400,错误:无法验证应用程序
EN

Stack Overflow用户
提问于 2015-05-16 05:58:31
回答 1查看 253关注 0票数 2

我正在按照Sam教程开发我自己的webRTC应用程序,我正在使用xirSys为我的点对点视频提供转服务器。但是$.ajax()方法没有像我预期的那样返回凭证、用户名和url。我还尝试使用dataType: JSONP。从firebug调试时返回的响应是:

{"p":"/getIceServers","s":400,"d":null,“e”:“无法验证应用程序”}

我是否可以将我的 url 用户名凭据作为JSON直接在我的应用程序中使用,而不会出现任何错误,因为即使url点击状态为200,有时在调用$.ajax()时仍然会出现语法错误?

代码语言:javascript
复制
    $.ajax({
        type: "POST",
        url: "https://api.xirsys.com/getIceServers",
        data: {
            ident: "< xyz >",
            secret: "< something-like-my-token >",
            domain: "< www.mydomain.com >",
            application: "default",
            room: "default",
            secure: 1
        },
        success: function (data, status) {
            // data.d is where the iceServers object lives
            peerConnectionConfig = data.d;
            console.log(peerConnectionConfig);
        }
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-19 07:58:13

经过很长时间的挣扎之后,我终于发现使用jQuery的$.ajax()并不像$.post()那样酷,或者只是我没有得到它。不管怎么说,这是我的工作-围绕它。

function()是一个成功回调,其中、STUN、转向服务器被放置在一个数组中,并按照RTCPeerConnection(server)方法的要求使用。

代码语言:javascript
复制
$.post("https://api.xirsys.com/getIceServers", {
            ident: "your_username",
            secret: "XXX-XXXX-XXXX-XX",
            domain: "www.mydomainname.com",
            application: "default",
            room: "default",
            secure: 1
        },
        function (data, status) {
            console.log("Data: " + data + "nnStatus: " + status); //just for checking
            myResponse = data;
            turnServer = JSON.parse(myResponse);     //parsing to JSON because RTCPeerConnection() requires an object
            console.log(turnServer.d);    //d is the property that contains our STUN and TURN servers
            for (var i in turnServer.d.iceServers) {    //logic for STUN and TURN
                if(i == 0 ) {
                    STUN = turnServer.d.iceServers[i];
                    pc_config.iceServers.push(STUN);
                }
                if( i > 0 ) {
                    var turnUrl = turnServer.d.iceServers[i].url;
                    var turnSlice = turnUrl.slice(5,25);
                    TURN = {"url": "turn:" + turnServer.d.iceServers[i].username + '@' + turnSlice,
                        "credential" : turnServer.d.iceServers[i].credential }
                    pc_config.iceServers.push(TURN);

      }

调用RTCPeerConnection(pc_config)来获取眩晕和翻转服务器,否则在localhost上可以很好地工作,参数设置为null

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30272355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档