/// <summary> /// 获取jsapi_ticket /// </summary> /// <param name="accessToken">企业凭证</param> /// <returns></returns> public static string GetJSApiTicket(string accessToken) { IDingTalkClient client = new DefaultDingTalkClient(Settings.Default.GetJSApiTicketServerUrl); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest(); req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse rsp = client.Execute(req, accessToken); return(rsp.Body); }
/// <summary> /// 获取 JsApiTicket /// </summary> /// <returns></returns> public static string GetJsApiTicket(string accessToken) { DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/get_jsapi_ticket"); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest(); req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse response = client.Execute(req, accessToken); if (response != null && response.Errcode == 0) { return(response.Ticket); } return(null); }
public void InsertCache() { try { string accessToken = AccessToken.GetAccessToken(); //获取授权jsapi_ticket DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/get_jsapi_ticket"); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest(); req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse execute = client.Execute(req, accessToken); HttpRuntime.Cache.Insert("Dingtalk_Ticket", execute.Ticket, null, DateTime.Now.AddSeconds(3600), Cache.NoSlidingExpiration); } catch (Exception ex) { throw ex; } }
/// <summary> /// 生成JsAipTicket /// </summary> /// <param name="_accessToken"></param> /// <returns></returns> private string GetJsApiTicket(string _accessToken) { DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/get_jsapi_ticket"); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest(); req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse response = client.Execute(req, _accessToken); if (response.Errcode == 0) { return(response.Ticket); } else { throw new Exception("获取jsTicket错误:" + response.ErrMsg); } }
/// <summary> /// 获取免登录ticket /// </summary> /// <param name="accessToken"></param> /// <returns></returns> public static string GetJSTicket(string accessToken) { try { var client = new DefaultDingTalkClient("https://oapi.dingtalk.com/get_jsapi_ticket"); OapiGetJsapiTicketRequest jsapiTicket = new OapiGetJsapiTicketRequest(); jsapiTicket.AddOtherParameter("access_token", accessToken); jsapiTicket.SetHttpMethod("GET"); OapiGetJsapiTicketResponse retString = client.Execute(jsapiTicket); log.Info("GetJSTicket: " + retString.Body); return(retString.Ticket); } catch (Exception ex) { log.Info(ex); return(""); } }
/// <summary> /// /// </summary> /// <returns></returns> public static Result GetDingTicket() { Result result = new Result() { Code = 1 }; string accessToken = GetDingToken(); IDingTalkClient client = new DefaultDingTalkClient(dingUrl + "/get_jsapi_ticket"); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest { }; req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse rsp = client.Execute(req, accessToken); if (rsp.Body != null) { result.Obj = rsp.Body; } return(result); }
public IHttpActionResult GetJsapiTicket(string url) { try { string accessToken = AccessToken.GetAccessToken(); //获取授权jsapi_ticket DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/get_jsapi_ticket"); OapiGetJsapiTicketRequest req = new OapiGetJsapiTicketRequest(); req.SetHttpMethod("GET"); OapiGetJsapiTicketResponse execute = client.Execute(req, accessToken); //初始化配置类 Ticket ticket = new Ticket(); ticket.AgentId = Allocation.AgentId.ToString(); ticket.CorpId = Allocation.CorpId; //时间戳 string timeStamp = ConvertDateTimeToInt().ToString(); ticket.TimeX = timeStamp; //生成签名随机字符串 string nonceStr = "123456"; ticket.NonceStr = nonceStr; //计算鉴权签名 string str = "jsapi_ticket=" + execute.Ticket + "&noncestr=" + nonceStr + "×tamp=" + timeStamp + "&url=" + url; var buffer = Encoding.UTF8.GetBytes(str); var data = SHA1.Create().ComputeHash(buffer); //BitConverter.ToString(data) StringBuilder sub = new StringBuilder(); foreach (var t in data) { sub.Append(t.ToString("x2")); } //var sha = SHA1(str); ticket.Signature = sub.ToString(); return(JsonResultHelper.JsonResult(0, "请求成功", ticket)); } catch (Exception ex) { return(JsonResultHelper.JsonResult(10000, "请求失败:" + ex.ToString())); } }