/// <summary> /// 根据场景ID获取ticket /// </summary> /// <param name="sceneID">场景ID</param> /// <param name="isTemp">是否是临时二维码</param> /// <returns></returns> private static string GetTicket(int sceneID, string globalToken, bool isTemp) { if (sceneID > 0 && sceneID <= 1000) { return(null); } string result = null; string data = string.Empty; if (isTemp) { data = string.Format(WeChatConfiguration.TemporaryQrCodeJson, sceneID); } else { data = string.Format(WeChatConfiguration.PermanentQrCodeJson, sceneID); } string ticketJson = WeChatHttpUtility.SendHttpRequest(string.Format(WeChatConfiguration.CreateTicketUrl, globalToken), data); XDocument doc = JsonConvert.DeserializeXNode(ticketJson, "root"); XElement root = doc.Root; if (root != null) { XElement ticket = root.Element("ticket"); if (ticket != null) { result = ticket.Value; } } return(result); }
/// <summary> /// 获取全局Token /// </summary> /// <returns></returns> public static OAuthGlobalToken GetGlobalAccessToken() { string Str = WeChatHttpUtility.GetJson(WeChatConfiguration.GlobalTokenUrl); OAuthGlobalToken Oauth_GlobalToken_Model = JsonConvert.DeserializeObject <OAuthGlobalToken>(Str); return(Oauth_GlobalToken_Model); }
/// <summary> /// 获得用户信息 /// </summary> /// <param name="accessToken"></param> /// <param name="openId"></param> /// <returns></returns> public static OAuthUser GetUserInfo(string accessToken, string openId) { string Str = WeChatHttpUtility.GetJson(string.Format(WeChatConfiguration.GetUserInfoUrl, accessToken, openId)); OAuthUser OAuthUser_Model = JsonConvert.DeserializeObject <OAuthUser>(Str); return(OAuthUser_Model); }
/// <summary> /// 获取Access Token获得,包括openId /// </summary> /// <param name="code"></param> /// <returns></returns> public static OAuthToken GetAccessToken(string code) { string Str = WeChatHttpUtility.GetJson(string.Format(WeChatConfiguration.AccessTokenUrl, code)); OAuthToken Oauth_Token_Model = JsonConvert.DeserializeObject <OAuthToken>(Str); return(Oauth_Token_Model); }
/// <summary> /// 创建永久二维码 /// </summary> /// <param name="sceneID">场景id,int类型</param> /// <returns></returns> public static string GeneratePermanent(int sceneID, string globalToken) { string ticket = GetTicket(sceneID, globalToken, false); if (ticket == null) { return(null); } return(WeChatHttpUtility.GetData(string.Format(WeChatConfiguration.GetQrCodeUrl, HttpUtility.UrlEncode(ticket)))); }
/// <summary> /// 发送客服信息 /// </summary> /// <param name="globalToken"></param> /// <param name="message">SendMessage Json</param> public void SendCustomMessage(string globalToken, SendMessage message) { WeChatHttpUtility.SendHttpRequest(string.Format(WeChatConfiguration.SendCustomMessageUrl, globalToken), message.GetJsonString()); }
/// <summary> /// 删除菜单 /// </summary> /// <param name="globalToken"></param> public static void DeleteMenu(string globalToken) { string url = string.Format(WeChatConfiguration.DeleteMenuUrl, globalToken); WeChatHttpUtility.GetData(url); }
/// <summary> /// 创建菜单 /// </summary> /// <param name="menu"></param> /// <param name="globalToken"></param> public static void CreateMenu(string menu, string globalToken) { string url = string.Format(WeChatConfiguration.CreateMenuUrl, globalToken); WeChatHttpUtility.SendHttpRequest(url, menu); }
/// <summary> /// 获取菜单 /// </summary> /// <param name="globalToken"></param> /// <returns></returns> public static string GetMenu(string globalToken) { string url = string.Format(WeChatConfiguration.GetMenuUrl, globalToken); return(WeChatHttpUtility.GetData(url)); }