钉钉扫码登录第三方网站

钉钉官方文档:扫码登录第三方网站 - 开放平台

方式一:使用钉钉提供的扫码登录页面

https://oapi.dingtalk.com/connect/qrconnect?appid= 
SuiteKey 
&response_type=code&scope=snsapi_login&state=STATE&redirect_uri=REDIRECT_URI

也可以试试

https://http://login.dingtalk.com/oauth2/auth?&response_type=code&corpid=CORPID&scope=openid corpid&prompt=consent&client_id=CLIENT_ID&redirect_uri=REDIRECT_URI&state=dingtalk

方式二:登录二维码内嵌到自己页面中

1、页面引入js文件<script src="https://http://g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js"></script>

2、创建放置二维码的组件<div id="login_container"></div>

3、创建实例

DDLogin({
 id:"login_container",
 goto: encodeURIComponent(this.dingUrl + '&redirect_uri='+this.redirectUrl),
 style: "border:none;background-color:transparent;",
 width : "240",
 height: "300"
        });

 4、添加扫码回调处理

let vm = this
 var handleMessage = function (event) {
 var origin = event.origin;
 if( origin == "https://login.dingtalk.com" ) { //判断是否来自ddLogin扫码事件。
    var loginTmpCode = event.data; 
    let state = new Date().getTime()
    //获取到loginTmpCode后就可以在这里构造跳转链接进行跳转了
    let url = vm.dingUrl + '&redirect_uri=' + vm.redirectUrl + '&loginTmpCode=' + loginTmpCode + '&state=' + state
    var link = document.createElement('a');
    link.href = url;
    link.click();
   }
 };
 if (typeof window.addEventListener != 'undefined') {
 window.addEventListener('message', handleMessage, false);
        } else if (typeof window.attachEvent != 'undefined') {
 window.attachEvent('onmessage', handleMessage);
        }
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值