es6钉钉h5免登开发前端流程

这是钉钉开放平台的官方文档https://ding-doc.dingtalk.com/doc#/dev/uwa7vs

但是步骤不是很详细,有些东西也找不到是哪里来的。撞南墙撞了好久终于撞出来了

最重要的就是获取到代表用户身份的code,虽然上面明确写着获取微应用免登授权码不需要鉴权,即dd.config,但是试了很久结果还是要鉴权。以下为鉴权的代码

abc = () => {

const newThis=this;                                // onSuccess不是箭 头函数,所以需要转一下this

    if (this.state.queryData !==null) {      //  queryData是后端传过来的,config里面基本都是后端传过来的值

const config = {

           agentId:this.state.queryData.agentId,

            corpId:this.state.queryData.corpId,

            timeStamp:this.state.queryData.timeStamp,

            nonceStr:this.state.queryData.nonceStr,

            signature:this.state.queryData.signature,

            jsApiList: [                                       //  这个也南了好久,  jsApiList: ['runtime.info' ]照抄下来就可以

                    'runtime.info',

            ],

        };

// 这是鉴权成功后拿到code的代码 

        dd.runtime.permission.requestAuthCode({

corpId:'*************',                               // 企业id,固定值,找后端要一下

            onSuccess(result) {                    //  onSuccess里面拿到code,需要存一下在另一个函数用 

const ddCode = result.code;                  // result是一个对象 {code : ' ********* ' }

                newThis.setState({                  // 存一下

ddCode: result.code,       

                });

                return ddCode;

            },

            onFail(err) {

alert(`dd.config鉴权失败${JSON.stringify(err)}`);

            },

        });

    }else{

alert('提示信息')

}

};

你可能感兴趣的:(es6钉钉h5免登开发前端流程)