钉钉企业开发-个人授权登录java实操流程
  0ZwfR6X6Muxs 2023年11月26日 81 0


老规矩,先上一波标题,哈哈哈!

作为开发者首先你想要开发你自己的应用你就应该先去看看钉钉,然后有不懂的问题再去搜!
附上链接[https://ding-doc.dingtalk.com/doc#/serverapi2/eev437](https://ding-doc.dingtalk.com/doc#/serverapi2/eev437)
我就不那多么话了直接上代码!我这个是直接从钉钉粘贴过来的,流程,你可以当我是知识的搬运工,只不过我给你简洁了流程

使用下面钉钉的依赖我也给你放在最下面的了,前端的代码贴图后续也贴上!

**首先我们先获取到code,既然钉钉说的前端应用内免登录能简单省事为什么不呢?**
//第一条获取用户信息的链接
public static final String GET_USERINFO_URL = "https://oapi.dingtalk.com/user/getuserinfo";
/*
这里的code是前端免登录方法获取到的code,前端获取到code以后回调这个你的login登录接口
你自己通过code调用getuserinfo方法。
*/
public String getUserInfo(String code) {

		try {
		//钉钉的方法,我就直接拿过来用了,如果你比较傲娇也可以自己发送http请求都是一样的
			DingTalkClient client = new DefaultDingTalkClient(GET_USERINFO_URL);
			OapiUserGetuserinfoRequest request = new OapiUserGetuserinfoRequest();
			//设置参数code
			request.setCode(code);
			request.setHttpMethod("GET");
			//这里的getAccesstoken方法是获取token的方法,下面我会附上获取token的方法
			OapiUserGetuserinfoResponse response = client.execute(request, getAccessToken());
			//用钉钉的api是真香啊!
			String userId = response.getUserid();
			System.out.println("jsonObject:" + response.toString());
			// 3.错误消息处理
			if (null != response) {
				if (0 != response.getErrcode()) {
					return null;
				}
			}
			return userId;
		} catch (ApiException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}

下面是获取token的方法,maven依赖方法还在下面

//不写注释自己看着难受
//获取token的信息
public static final String ACCESS_TOKEN_URL = "https://oapi.dingtalk.com/gettoken";
public  String getAccessToken() {
		try {
		DefaultDingTalkClient client = new DefaultDingTalkClient(ACCESS_TOKEN_URL);
		OapiGettokenRequest request = new OapiGettokenRequest();
		//这里放你自己的key在企业里边有
		request.setAppkey(appkey);
		request.setAppsecret(appsecret);
		request.setHttpMethod("GET");
		OapiGettokenResponse response = client.execute(request);
		//直接就返回token了香不香!
		return response.getAccessToken();
		} catch (ApiException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}

这里是maven依赖 - -!

##放着一个依赖基本上上面的就都能用了。
		<dependency>
			<groupId>com.aliyun</groupId>
			<artifactId>alibaba-dingtalk-service-sdk</artifactId>
			<version>1.0.1</version>
		</dependency>

基本上每个应用的集成开发流程大体上都差不多,完成不重要,重要的是你自己的思路


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月26日 0

暂无评论

推荐阅读
0ZwfR6X6Muxs