`

(钉钉)第三方WEB网站扫码登录

阅读更多
年底在做钉钉和公司的知识库产品的对接,怎么使用钉钉api的如下:
第一步:
登录:https://oa.dingtalk.com/#/welcome
这点可以自己建立一个企业账号进行测试



点击工作台建立应用



设置





参数说明:
1.应用logo:....
2.应用名称:必填
3.AgentID:自动生成,手机app自动登录需要使用
4.功能介绍:....
5.后端地址:访问api的接口地址
6.首页地址:改应用首页地址
7.pc版首页地址:登录页面地址


第二步
扫码登录的js引入和api调用

钉钉官网api地址:https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.Dc2Nel&treeId=385&articleId=104882&docType=1

使用
1.引入
<script src="//g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js"></script>


//声明钉钉二维码参数包括【扫描授权id、企业id】
	var ding={"appid":"","agentid":"","corpid":"","uri":"","redirect_uri":"","code":"","accesstoken":""};
	//1.5.1.设置扫描授权id
	ding.appid="";
	//1.5.2.设置重定向地址
	ding.redirect_uri="";
	//1.5.3.扫码触发跳转钉钉接口地址
	ding.uri = "https://oapi.dingtalk.com/connect/oauth2/sns_authorize?appid="+ding.appid+"&response_type=code&scope=snsapi_login&state=STATE&redirect_uri="+ ding.redirect_uri;
	

	
	
	//2.2.扫码触发事件
	var obj = DDLogin({
		id:"login_container",
		goto: encodeURIComponent(ding.uri),
		style: "border:none;background-color:#FFFFFF;",
		width : "240",
		height: "300",
	});
	
	//2.3.获取code
    var getcode = function (event) {
        var origin = event.origin;
        console.log("origin", event.origin);
        if( origin == "https://login.dingtalk.com" ) { //判断是否来自ddLogin扫码事件。
            var loginTmpCode = event.data; //拿到loginTmpCode后就可以在这里构造跳转链接进行跳转了
            ding.code=loginTmpCode;
            console.log("获取到code", loginTmpCode);
            window.parent.postMessage(loginTmpCode,'*');
            //1.跳转到主页面,微应用自身截取code比对用户信息
             var redirect_uri_check = "https://oapi.dingtalk.com/connect/oauth2/sns_authorize?appid=dingoazjmclpvolnxq3wba&response_type=code&scope=snsapi_login&state=STATE&redirect_uri=http://&loginTmpCode=";
           	window.location.href=redirect_uri_check+loginTmpCode;
        };
	};
	//2.4.钉钉扫码监听
	if (typeof window.addEventListener != 'undefined') {
	    window.addEventListener('message', getcode, false);
	} else if (typeof window.attachEvent != 'undefined') {
	    window.attachEvent('onmessage', getcode);
	};
	//2.5.这儿主要是获取code,返回钉钉id,进行后端的钉钉id比对,api接口见下
	var url = window.location.search.split("&"); 
	var code=url[0].substring(url[0].lastIndexOf("=")+1);
		console.log(code);
		if(code!=""){
			var uri="/"
			$http({
				url:uri,
				method:"GET",
				headers : {'Content-Type' : 'application/x-www-form-urlencoded'}
			}).success(function(data){
				console.log(data)
				if(data!=""){
						$window.localStorage["user"] = angular.toJson(data[0]);
						window.location.href="/";
					}else{
						alert(data[0].msg);
						$scope.user.info="";
						window.location.href="/";
					}
			});
	};



调用api在附件中
  • 大小: 146.5 KB
  • 大小: 71.7 KB
  • 大小: 97.2 KB
分享到:
评论

相关推荐

    C# winform设计 钉钉 微信 二维码 扫码登录登录客户端 源码文件 CS架构

    本项目是基于C# WinForm设计的一个客户端应用程序,实现了钉钉和微信的二维码扫码登录功能。下面将详细阐述相关知识点。 1. **C#语言**:C#是由微软开发的一种面向对象的编程语言,它以其简洁、类型安全和性能强大...

    SpringBoot 钉钉扫码登录以及重定向传递参数.rar

    钉钉扫码登录讲解 一、扫码登录参数准备 ①、首先我们进入钉钉开放平台 https://ding-doc.dingtalk.com/ ②、选择《第三方企业应用》...③、选择《服务端API》选项-&gt;《身份验证》-&gt;《扫码登录第三方网站》,得到教程

    钉钉第三方企业微应用回调逻辑

    钉钉第三方企业应用验证回调地址有效url, 支持PHP7.1+

    java源码 钉钉扫码登陆 示例源码 2018127

    - `QrCodeGenerator.java`: 可能用于生成二维码的工具类,通常会使用第三方库如ZXing或Google的Charts API。 - `Utils.java`: 通用工具类,可能包含签名、加密、解密等方法,这些都是与钉钉API交互时必不可少的。 ...

    钉钉扫码登录模块

    1. **第三方登录授权**:第三方登录是指用户通过已注册并验证过的社交账号(如钉钉)进行登录,而无需创建新的账户。这需要开发者与钉钉开放平台进行接口对接,获取相应的OAuth2.0授权码,实现用户身份的验证。 2. ...

    钉钉扫码登录、钉钉获取 userid、钉钉获取打卡记录.zip

    针对标题和描述中的内容,我们将详细探讨“钉钉扫码登录”、“钉钉获取userid”以及“钉钉获取打卡记录”这三个知识点。 1. **钉钉扫码登录**: 钉钉扫码登录是钉钉提供的一种安全便捷的登录方式。用户可以通过...

    SpringBoot 实现扫码登录

    PC端监听二维码session状态接口,目前定义状态:0 二维码生成成功 ,1 手机端扫码成功 2手机端确认登录 -1 sessionId过期失效 二维码扫描通知,手机端扫描成功会调用此接口,发送session通知 手机端确认通知,手机端...

    钉钉第三方登录和分享 ANDROID SDK源代码

    钉钉第三方登录和分享,从官方SDK提取的源代码,可供第三方集成代码研究。

    活字格-钉钉扫码登录命令.zip

    【标题】"活字格-钉钉扫码登录命令.zip" 提供的是一个集成在活字格中的功能,用于实现通过钉钉应用进行扫码登录。活字格是一款强大的低代码开发平台,它允许用户通过图形化界面构建应用程序,而无需深入编程语言。这...

    第三方网站实现钉钉登录

    在现代互联网环境中,为了提供更好的用户体验和服务,许多第三方网站选择集成第三方登录功能,例如通过钉钉账号进行登录。本文将详细讲解如何实现第三方网站与钉钉的登录对接,以帮助开发者理解和实施这一功能。 ...

    PHP版本钉钉ISV应用Demo

    钉钉ISV应用是指由第三方开发者为钉钉平台创建的企业级应用,这些应用可以集成到钉钉企业环境中,为企业提供定制化的功能和服务。ISV开发者可以通过钉钉开放平台提供的API和SDK,实现与钉钉平台的数据交互,创建符合...

    钉钉免登PHP版本 PHP钉钉免登录 钉钉企业免登录源码

    阿里钉钉企业免登录php版本JSAPI接口源码,根据钉钉开发文档写的精简版钉钉企业免登陆,PHP5.2.6和PHP5.3等版本均可以使用;本人才注册CSDN账号,平时需要在CSDN上下载些源码学习,将代码上传赚点积分

    2018127java源码 钉钉扫码登陆 示例源码.rar

    在本资源中,我们主要探讨的是使用Java实现钉钉扫码登录的功能。这是一份2018年的示例源码,对于理解如何与钉钉开放平台进行集成,以及如何利用其SDK来实现实时的扫码登录流程具有重要的参考价值。 首先,我们需要...

    钉钉企业免登陆PHP版本源码

    通过OAuth 2.0,应用可以获取用户的授权,但不需要获取用户的密码,从而实现安全的第三方登录。 3. **PHP编程**:PHP是一种广泛应用于Web开发的服务器端脚本语言,它允许开发者处理HTTP请求,生成动态网页内容,...

    钉钉第三方企业应用-小程序-quickstart java版.zip

    零安装:用户只需通过微信扫一扫或搜索功能,即可打开和使用小程序,大大降低了用户的使用门槛和手机存储空间压力。 速度快:加载速度相较于传统的HTML5网页更快,依托于微信强大的基础设施,能够实现近乎原生应用...

    JAVA开发第三方授权登录的工具类软件源码.zip

    JAVA开发第三方授权登录的工具类软件源码,目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、...

    小而全而美的第三方登录开源组件 支持Github、Gitee、微博、钉钉、百度、Slack和 Line 等第三方平台的授权登录

    小而全而美的第三方登录开源组件。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、...

    钉钉小程序二维码扫描程序

    完整的钉钉小程序扫描程序

Global site tag (gtag.js) - Google Analytics