前言:废话不多说,上手就干

1、这里使用的是钉钉的h5微应用,pc端应用,至于在钉钉内怎么创建h5微应用,这里就不在一一述说了,百度也行,看钉钉官方文档也行,主要是我不想截屏了,太麻烦了,哈哈;

2、到这里时,钉钉内创建的h5微应用已经完成了,需要注意的有一下几点:

Java 集成钉钉api 钉钉集成应用_Java 集成钉钉api

Java 集成钉钉api 钉钉集成应用_Java 集成钉钉api_02

3、先进行第一步操作,钉钉内部免密登录,这里就不用官方文档的描述了,直接上代码:
这里前端使用的是vue

//钉钉内部this指向问题,直接使用this不好使
 var that = this;
    dd.ready(function() {
    //CorpId是企业的唯一标识,获取地方,见上面第二张图
      var CorpId = “”;
      //官方文档的内容,照着写就OK
      dd.runtime.permission.requestAuthCode({
        corpId: CorpId,
        onSuccess: function(result) {
       		/*
       		result.code就可以拿到钉钉授权码了,
       		注意这个是要在钉钉环境下进行操作,
       		反正有点麻烦,需要在服务器部署好项目,
       		在钉钉内打开才会生效,可以使用开发版的钉钉进行调试;
       		拿到钉钉的授权码就可以进行自己的业务逻辑书写了,
       		后端代码这里就不写了,按照官方文档进行操作就行了,
       		也可以在线调试一下,里面需要的参数,在上面第一张图中都已经标注出来了
       		 */
        }
      });
    });

4、与钉钉的消息对接,enn,有一点忘了说了,钉钉的SDK依赖,如果使用maven开发的时候,这个依赖在maven中心仓库下载不下来,解决办法就是下载SDK的jar包,然后手动发布到自己本地的maven仓库,这个要是忘了怎么发布的话,就百度一下吧,因为命令我也忘了,【手动滑稽】
下面上代码:

DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2");
            OapiMessageCorpconversationAsyncsendV2Request req = new OapiMessageCorpconversationAsyncsendV2Request();
            req.setAgentId("AgentId(见上图一)");
            req.setUseridList("需要通知的员工的在钉钉内的唯一标识(免密登录的时候可以获取到)");
            OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg();
            msg.setMsgtype("link");
            msg.setLink(new OapiMessageCorpconversationAsyncsendV2Request.Link());
            msg.getLink().setTitle("企业内部应用名称");
            msg.getLink().setText("需要通知的内容");
            msg.getLink().setMessageUrl("url");
            msg.getLink().setPicUrl("url");
            req.setMsg(msg);
            OapiMessageCorpconversationAsyncsendV2Response response = client.execute(req,token);

嗯,后端吧,我用到的就是这一部分,其他的我也没用到,当然,这篇文章写得略显粗糙,但是问题不大,意思到了,主要也就是提供一个思路,总体来说,我做的对钉钉的集成开发,也就用到这两点,一个免密登录,一个就是消息通知,嗯,我称之为消息推送,因为项目中有即时通讯,做钉钉的消息通知,就是在用户离线的时候把此用户的信息推送到钉钉去,大概就这么多吧,以后要是有时间了,在把这篇文章详细屡屡,大家看看就好,莫钻牛角尖,最后还是建议大家看官方文档,里面讲解的真的很详细