c# 推送钉钉消息

利用钉钉提供的API可以推送消息到用户的钉钉app。根据钉钉的官方文档,调用钉钉的api需要一个AccessToken,我们先获取这个AccessToken。
 

string CorpId = "你的CorpId ";
string CorpSecret = "你的CorpSecret ";
public string AccessToken = "";
 
string AccessUrl = string.Format("https://oapi.dingtalk.com/gettoken?corpid={0}&corpsecret={1}", CorpId, CorpSecret);
Newtonsoft.Json.Linq.JToken json = Newtonsoft.Json.Linq.JToken.Parse(HttpGet(AccessUrl));
AccessToken = json["access_token"].ToString();
这里利用到了Newtonsoft.Json类解析返回来的json数据,用法网上很多资料可以查找到。HttpGet是我封装好的一个类,可以在这里查看,下面的HttpPost也是如此。

有了AccessToken,我们就可以调用钉钉的api了,发送推送的相关api在,文档已经写得很清晰了,我们只需要发送一个json格式的数据过去,就可以推送数据了。
 

string MessageUrl = "https://oapi.dingtalk.com/message/send?access_token=" + AccessToken;
var json_req = new
{
    touser = "用户id1|用户id2",  //接受推送userid,不同用户用|分割
    toparty = "",   //接受推送部门id
    agentid = "1",
    msgtype = "text", //推送类型
    text = new
           {
               content = "要推送的内容"
            }
};
string jsonRequest = JsonConvert.SerializeObject(json_req);//将对象转换为json
HttpPost(MessageUrl, jsonRequest);
其中HttpPost是我已经封装好的一个类,需要注意的是,agentid指的是以哪个应用的身份推送消息,这个id可以在钉钉管理后台的应用里面查看得到。

最后的效果:


--------------------- 
作者:啊ten 
来源:CSDN 
原文:https://blog.csdn.net/qq_41731938/article/details/82689827 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/yelin042/article/details/86211150