开发者社区> 问答> 正文

官方DEMO ISV接入方式 jsapi授权出错


  dd.config({
            agentId: '<%= appId%>',
            corpId: '<%= corpId%>',
            timeStamp: <%= timestamp%>,
            nonceStr: '<%= nonceStr%>',
            signature: '<%= signature%>',
            jsApiList: ['runtime.info',
        'biz.contact.choose',
        'device.notification.confirm',
        'device.notification.alert',
        'device.notification.prompt',
        'biz.ding.post']
        });
        dd.ready(function () {
            //dd.runtime.info({
            //    onSuccess: function (info) {
            //        alert('runtime info: ' + JSON.stringify(info));
            //    },
            //    onFail: function (err) {
            //        alert('fail: ' + JSON.stringify(err));
            //    }
            //});
            alert("dd.ready ok");
            //logger.i('dd.ready rocks!');
            dd.runtime.permission.requestAuthCode({
                corpId:  '<%= corpId%>',
                onSuccess: function (info) {
                    alert('authcode: ' + info.code);
                    $.ajax({
                        url: '../../Ajax/DingHandler.ashx?method=getuserinfo&code=' + info.code,
                        type: 'GET',
                        success: function (data, status, xhr) {
                                alert(data);
                        },
                        error: function (xhr, errorType, error) {
                            alert(errorType + ', ' + error);
                        }
                    });
                },
                onFail: function (err) {
                    alert('fail: ' + JSON.stringify(err));
                }
            });
        });


错误:dd error:{"message":"权限校验失败 Code:52019-Message:null","errorCode":3}
求助!!!

展开
收起
maxzheng 2016-01-13 11:42:35 5533 0
2 条回答
写回答
取消 提交回答
  • 回 1楼竹梅的帖子
    谢谢 已解决 是isv接入 获取accesstoken方式不一样
    2016-01-14 10:36:25
    赞同 展开评论 打赏

  • (1)首先检查用来生成签名(signature)的jsapi_ticket是否过期(jsapi_ticket有效期为7200秒,而且当你请求了新的ticket之后,旧的ticket就失效了)
    (2)其次检查生成签名的Url参数,与调用dd.config 所在的url是否一致
    生成签名用的url需要去除hash部分,e.g. 如果当前页面url是http://abc.def/ghi/jkl?m=123&n=456#opq,则用于生成签名的url是http://abc.def/ghi/jkl?m=123&n=456,可以使用调试工具来生成jsapi_ticket和signature,并和你实际使用的进行对比
    2016-01-13 21:49:25
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
API 平台的安全实践 立即下载
API平台的安全实践 立即下载
API网关实践 立即下载