using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Net;
using test;
using Newtonsoft.Json.Linq;

/// <summary>
/// DingHelper 的摘要说明
/// </summary>
public class DingHelper
{
public DingHelper()
{
//
// TODO: 在此处添加构造函数逻辑
//

}
/// <summary>
/// 获取Access_Token
/// </summary>
/// <returns></returns>
public static string getAccess_Token()
{
string Access_Token = "";
string corpid = ConfigurationSettings.AppSettings["ddQyCorpId"].ToString();
string corpsecret = ConfigurationSettings.AppSettings["CorpSecret"].ToString();
test.HttpHelper http = new test.HttpHelper();
string url = "https://oapi.dingtalk.com/gettoken?corpid=" + corpid + "&corpsecret=" + corpsecret;
string res = http.GetString(url);
if (res != null)
{
JObject obj = JObject.Parse(res);
if (obj["errcode"].ToString() == "0")
{
Access_Token = obj["access_token"].ToString();
}
}
return Access_Token;
}
/// <summary>
/// 获取用户简单信息
/// </summary>
/// <param name="code"></param>
/// <param name="accessToken"></param>
/// <returns></returns>
public static string getUserInfo(string code, string accessToken)
{
string result = null;
HttpHelper http = new HttpHelper();
string url = "https://oapi.dingtalk.com/user/getuserinfo?access_token=" + accessToken + "&code=" + code;
result = http.GetString(url);
return result;
}
/// <summary>
/// 获取用户详细信息
/// </summary>
/// <param name="accessToken"></param>
/// <param name="userid"></param>
/// <returns></returns>
public static string getuserDetail(string accessToken, string userid)
{
string result = null;
HttpHelper http = new HttpHelper();
string url = "https://oapi.dingtalk.com/user/get?access_token=" + accessToken + "&userid=" + userid;
result = http.GetString(url, "", "", false, "UTF-8");
return result;
}
/// <summary>
/// 获取部门详细信息(只支持中文)
/// </summary>
/// <param name="accessToken"></param>
/// <param name="departmentId">部门id</param>
/// <returns></returns>
public static string getDepartmentInfo(string accessToken, string departmentId)
{
string result = null;
HttpHelper http = new HttpHelper();
string url = "https://oapi.dingtalk.com/department/get?access_token=" + accessToken + "&id=" + departmentId;
result = http.GetString(url, "", "", false, "UTF-8");
return result;
}
}

【转载园主】七维月ok

【转载】钉钉开发c#帮助类 获取用户信息 DingHelper.cs的更多相关文章

  1. 钉钉开发c#帮助类 获取用户信息 DingHelper.cs

    using System;using System.Collections.Generic;using System.Configuration;using System.Linq;using Sys ...

  2. PHP 微信公众号开发 - 获取用户信息

    项目微信公众号开发,记录获取用户微信号信息,和用户openid 1,登录微信公众平台 点击登录微信公众平台 2,获取公众号开发信息 登陆之后在 开发->基本配置 3,设置IP白名单 在这里添加服 ...

  3. SharePoint 2013 APP 开发示例 (二)获取用户信息

    SharePoint 2013 APP 开发示例 (二)获取用户信息 这个示例里,我们将演示如何获取用户信息: 1. 打开 Visual Studio 2012. 2. 创建一个新的  SharePo ...

  4. Android之使用MediaMetadataRetriever类获取媒体信息

    一.昨天.介绍了使用MediaMetadataRetriever类来获取视频第一帧:http://blog.csdn.net/u012561176/article/details/47858099,今 ...

  5. .NET微信开发通过Access Token和OpenID获取用户信息

    本文介绍如何获得微信公众平台关注用户的基本信息,包括昵称.头像.性别.国家.省份.城市.语言. 本文的方法将囊括订阅号和服务号以及自定义菜单各种场景,无论是否有高级接口权限,都有办法来获得用户基本信息 ...

  6. PHP微信公众平台OAuth2.0网页授权,获取用户信息代码类封装demo(二)

    一.这个文件微信授权使用的是OAuth2.0授权的方式.主要有以下简略步骤: 第一步:判断有没有code,有code去第三步,没有code去第二步 第二步:用户同意授权,获取code 第三步:通过co ...

  7. php 微信公众平台OAuth2.0网页授权,获取用户信息代码类封装demo

    get_wx_data.php <?php /** * 获取微信用户信息 * @author: Lucky hypo */ class GetWxData{ private $appid = ' ...

  8. 微信快速开发框架(八)-- V2.3--增加语音识别及网页获取用户信息,代码已更新至Github

    不知不觉,版本以每周更新一次的脚步进行着,接下来应该是重构我的代码及框架的结构,有朋友反应代码有点乱,确实如此,当时写的时候只是按照订阅号来写的,后来才慢慢增加到支持API接口.目前还在开发第三方微信 ...

  9. 微信第三方登陆,无需注册一键登录,获取用户信息,PHP实现方法

    今天讲讲利用微信oauth2实现第三方登陆的实现方法. 先说说前提吧! 首先你得是服务号,并且是经过认证的.这样微信会给你很多第三方接口的权限,如果是订阅号或者没有认证的服务号那就不用想了! 一开始你 ...

随机推荐

  1. 用一个变量表示 ----------"序号,名称,价格"

     goods = [{"name": "电脑", "price": 1999},          {"name": & ...

  2. SAP CX Upscale Commerce : SAP全新推出的电商云平台

    大家好,我是Andy Chen,是SAP成都研究院年轻的SAP CX Upscale Commerce (后面将会以Upscale简称)开发团队的一名产品经理.CX的全称是Customer Exper ...

  3. c++ thread 使用不当导致的崩溃问题

    看个例子 class CTimer{ public: // 析构函数 virtual ~CTimer(){ } // 开始 void start() { b_exit = false; i = ; t ...

  4. css背景精华所在+前端页面开发流程

    background属性 background属性是css中应用比较多,且比较重要的一个属性,它是负责给盒子设置背景图片和背景颜色的,background是一个复合属性,它可以分解成如下几个设置项: ...

  5. Avito Code Challenge 2018

    第一次打CF,很菜,A了三道水题,第四题好像是是数位DP,直接放弃了.rateing从初始的1500变成了1499,还是绿名,这就很尴尬.之后觉得后面的题目也没有想象的那么难(看通过人数)过两天吧剩下 ...

  6. Django 自定义模板标签和过滤器

    1.创建一个模板库 使用模板过滤器的时候,直接把过滤器写在app里,例如:在app里新建一个templatetags的文件夹,这个目录应当和 models.py . views.py 等处于同一层次. ...

  7. 使用 libffi 实现 AOP

    核心还是利用oc消息的查找派发机制,进行类结构的动态修改,用新函数替换老函数,然后再调用老函数. 前言     众所周知,使用runtime的提供的接口,我们可以设定原方法的IMP,或交换原方法和目标 ...

  8. P4053 [JSOI2007]建筑抢修

    题目描述 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建 ...

  9. k8s存储 pv pvc ,storageclass

    1.  pv  pvc 现在测试 glusterfs  nfs  可读可写, 多个pod绑定到同一个pvc上,可读可写. 2. storageclass  分成两种 (1)  建立pvc, 相当于多个 ...

  10. 域对象 request

    一)域对象: 1)request的生命周期: 从请求开始创建,到响应完成结束. 2)  作用:携带一次请求内的数据. 3)请求转发: 请求转发: 1)浏览器发送请求到服务器A,然后服务器A将请求转发到 ...