钉钉 java sdk_JAVA maven项目使用钉钉SDK获取token与用户代码示例

本文介绍了如何在JAVA Maven项目中使用钉钉SDK获取token及用户信息。首先,通过手动安装SDK到本地maven库,然后在pom.xml配置依赖。接着,展示了获取access_token、用户信息、部门列表的代码示例,包括调用相关API的步骤和异常处理。
摘要由CSDN通过智能技术生成

本篇文章小编给大家分享一下JAVA maven项目使用钉钉SDK获取token与用户代码示例,代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

3b9612f5204da66a76113c54a4b7253c.png

将SDK放一个文件里,记住文件地址。D:eclipse-workspace项目名模块名lib

win+r cmd 敲下面的命令:

【进入相应盘】 D:

【进入文件地址】 cd D:eclipse-workspace项目名模块名

【运行命令】 mvn install:install-file -DgroupId=com.dingtalk.api -DartifactId=top-api-sdk-dev -Dversion=ding-open-mc-SNAPSHOT

-Dfile=lib/taobao-sdk-java-auto_1479188381469-20200319.jar -Dpackaging=jar -DgeneratePom=true

3fd9e403c7d6ae2da0f3f101d4edb471.png

然后在pom文件中增加以下内容:

com.dingtalk.api

top-api-sdk-dev

ding-open-mc-SNAPSHOT

理解:普通的maven项目都会在pom里配置好jar,项目自动从maven中配置的镜像地址(就是网上)自己把jar包下载到你设置的位置

但是有些jar包下载不下来,可以先本地保存,然后像上面那样用命令把jar包挂到maven设置的jar库里去

JAVA后台代码:

import com.dingtalk.api.DefaultDingTalkClient;

import com.dingtalk.api.DingTalkClient;

import com.dingtalk.api.request.OapiDepartmentListRequest;

import com.dingtalk.api.request.OapiGettokenRequest;

import com.dingtalk.api.request.OapiMessageCorpconversationAsyncsendV2Request;

import com.dingtalk.api.request.OapiUserSimplelistRequest;

import com.dingtalk.api.response.OapiDepartmentListResponse;

import com.dingtalk.api.response.OapiGettokenResponse;

import com.dingtalk.api.response.OapiMessageCorpconversationAsyncsendV2Response;

import com.dingtalk.api.response.OapiUserSimplelistResponse;

import com.taobao.api.ApiException;

import com.dingtalk.api.response.OapiDepartmentListResponse.Department;

import com.dingtalk.api.request.*;

import com.dingtalk.api.response.*;

。。。

登录接口方法(前端传来code){

// 钉钉 /gettoken 获取token,只需填写appkey和appsecret

try {

DingTalkClient client1 = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");

OapiGettokenRequest req1 = new OapiGettokenRequest();

req1.setAppkey("xxxxxxxx");

req1.setAppsecret("xxxxxxxx");

req1.setHttpMethod("GET");

OapiGettokenResponse rsp1 = client1.execute(req1);

System.out.println(rsp1.getBody());

accessToken = rsp1.getAccessToken();

} catch (Exception e) {

//} catch (ApiException e) {

e.printStackTrace();

}

// 钉钉 /user/getuserinfo 获取用户userid

try {

DingTalkClient client2 = new DefaultDingTalkClient("https://oapi.dingtalk.com/user/getuserinfo");

OapiUserGetuserinfoRequest req2 = new OapiUserGetuserinfoRequest();

req2.setCode(code);//

req2.setHttpMethod("GET");

OapiUserGetuserinfoResponse rsp2 = client2.execute(req2, accessToken);//

System.out.println(rsp2.getBody());

userId = rsp2.getUserid();

System.out.println("userId:" + userId);

System.out.println("------------------------------------------------------");

} catch (ApiException e) {

e.printStackTrace();

}

// 钉钉 /user/get 获取用户详情

try {

DingTalkClient client3 = new DefaultDingTalkClient("https://oapi.dingtalk.com/user/get");

OapiUserGetRequest req3 = new OapiUserGetRequest();

req3.setUserid(userId);//

req3.setHttpMethod("GET");

OapiUserGetResponse rsp3 = client3.execute(req3, accessToken);//

System.out.println(rsp3.getBody());

} catch (ApiException e) {

e.printStackTrace();

}

// 钉钉 获取所有部门列表

try {

DingTalkClient client4 = new DefaultDingTalkClient("https://oapi.dingtalk.com/department/list");

OapiDepartmentListRequest req4 = new OapiDepartmentListRequest();

req4.setHttpMethod("GET");

req4.setId("1");

OapiDepartmentListResponse rsp4 = client4.execute(req4, accessToken);

System.out.println("-----------------获取所有部门列表-----------------");

System.out.println(rsp4.getBody());

ListdepartmentList = rsp4.getDepartment();

System.out.println("-----------------------------------------------------");

// [{id: xxx, parentid: xxx, ......},{id: xxx, parentid: xxx, ......},{id: xxx, parentid: xxx, ......},{id: xxx, parentid: xxx, ......}]

System.out.println(departmentList.get(0).getId();

Long parentid = departmentList.get(0).getParentid();

} catch (ApiException e) {

e.printStackTrace();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值