asp.net c#语言实现钉钉鉴权验证

在做钉钉开发的时候,要想使用高级点的功能,需要钉钉鉴权验证,但是阿里给出的只有java和php的demo,没有c#,导致我在这方面耽误了好长时间,今天终于鉴权成功了

 

前台js代码,第一步必须引入钉钉的js

<script src="//g.alicdn.com/dingding/dingtalk-jsapi/2.0.57/dingtalk.open.js"></script>
复制代码
        dd.config({
            agentId: '', // 必填,微应用ID
            corpId: '',//必填,企业ID
            timeStamp: '', // 必填,生成签名的时间戳
            nonceStr: '', // 必填,生成签名的随机串,这个位置随便填写,记得要跟后台生成签名时的随机串要一致
            signature: '', // 必填,签名
            type: 0,   //选填。0表示微应用的jsapi,1表示服务窗的jsapi;不填默认为0。该参数从dingtalk.js的0.8.3版本开始支持
            jsApiList: [
                'device.geolocation.get',
        'biz.util.scanCard',
        'biz.telephone.showCallMenu',
        'device.base.getUUID',
        'biz.contact.complexPicker',
        'biz.util.scanCard',
            ] // 必填,需要使用的jsapi列表,注意:不要带dd。
        });

   
        dd.ready(function () {


            dd.biz.telephone.showCallMenu({
                phoneNumber: '18358602087', // 期望拨打的电话号码
                code: '+86', // 国家代号,中国是+86
                showDingCall: true, // 是否显示钉钉电话
                onSuccess: function () { },
                onFail: function () { }
            })

        })

        dd.error(function (error) {

            alert('dd error: ' + JSON.stringify(err));
        });
复制代码

 

 

1、获取Ticket(门票)

string Url = "https://oapi.dingtalk.com/get_jsapi_ticket?access_token=" + Tokens;

string Ticket = _token.GetContentFromUrl(Url);    //获取Ticket前要获取Token

 

2、获取时间戳

 public static long GetTimeStamp()      //获取时间戳
 {
        TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
        return Convert.ToInt64(ts.TotalSeconds);
 }

 

 

 

钉钉视频教程

posted @ 2019-04-10 15:10  唐尧  阅读(1989)  评论(0编辑  收藏  举报