WeChat開発メッセージプッシュ実装スキル(コード付き)
この記事では、主に WeChat 開発のためのメッセージ プッシュ実装テクニック (コード付き) を紹介します。メッセージ プッシュ実装コードに関する情報が必要な友人は、それを参照してください。
最近、WeChat パブリック アカウントを開発しています。編集したメッセージを WeChat エンタープライズ アカウントのアプリケーション グループに送信します。要約は次のとおりです。
//定义数据模型 public class Access_token { public Access_token() { // // TODO: 在此处添加构造函数逻辑 // } string _access_token; string _expires_in; /// /// 获取到的凭证 /// public string access_token { get { return _access_token; } set { _access_token = value; } } /// /// 凭证有效时间,单位:秒 /// public string expires_in { get { return _expires_in; } set { _expires_in = value; } } }
ログイン後にコピー
public ActionResult index(string returnUrl) { GetAccess_token(); IsExistAccess_Token(); return View(); } public static Access_token GetAccess_token() { string AppUrl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?"; string AppID = "应用组的CorpID";//在设置-》权限管理-》系统管理组 string AppSecret = "应用组的Secret";//在设置-》权限管理-》系统管理组 WebClient webClient = new WebClient(); Byte[] bytes = webClient.DownloadData(string.Format("{0}corpid={1}&corpsecret={2}", AppUrl, AppID, AppSecret)); string result = Encoding.GetEncoding("utf-8").GetString(bytes); JObject jObj = JObject.Parse(result); string token = jObj["access_token"].ToString(); string expires_in = jObj["expires_in"].ToString(); Access_token mode = new Access_token(); mode.access_token = token; mode.expires_in = expires_in; return mode; } ///
ログイン後にコピー
現在の日付に基づいて、Access_Token が期限切れかどうかを判断します。有効期限が切れた場合は、新しい Access_Token を返します。それ以外の場合は、前の Access_Token を返します。
public static string IsExistAccess_Token() { string Token = string.Empty; DateTime YouXRQ; string strPath = "../../weixin/XMLFile.xml"; // 读取XML文件中的数据,并显示出来 //string filepath = System.Web.Hosting.HostingEnvironment.MapPath(strPath); string filepath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strPath); StreamReader str = new StreamReader(filepath, System.Text.Encoding.UTF8); XmlDocument xml = new XmlDocument(); xml.Load(str); str.Close(); str.Dispose(); Token = xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText; YouXRQ = Convert.ToDateTime(xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText); if (DateTime.Now > YouXRQ) { DateTime _youxrq = DateTime.Now; Access_token mode = GetAccess_token(); xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText = mode.access_token; _youxrq = _youxrq.AddSeconds(int.Parse(mode.expires_in)); xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText = _youxrq.ToString(); xml.Save(filepath); Token = mode.access_token; } object text = new { toparty = "1", agentid = "2", msgtype = "text", text = new { content = "项目名称:"+来保网+"" } }; string wcr= btnSend(Token, text); return wcr; } public static string btnSend(string Token, object text) { string url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + Token; WebRequest req = WebRequest.Create(url); JavaScriptSerializer aa = new JavaScriptSerializer(); string postData = aa.Serialize(text); byte[] requestBytes = Encoding.UTF8.GetBytes(postData); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = requestBytes.Length; Stream requestStream = req.GetRequestStream(); requestStream.Write(requestBytes, 0, requestBytes.Length); requestStream.Close(); HttpWebResponse res = (HttpWebResponse)req.GetResponse(); StreamReader sr = new StreamReader(res.GetResponseStream(), Encoding.Default); string backstr = sr.ReadToEnd(); sr.Close(); res.Close(); WeChatReturn WCR = aa.Deserialize(backstr); return WCR.errmsg; }
ログイン後にコピー
読んでいただきありがとうございます。このサイトをサポートしていただきありがとうございます。
関連記事:
WebSocketベースのWEBメッセージプッシュフレームワーク
JavaでのWebSocketによるメッセージプッシュの実装コードの詳細説明
以上がWeChat開発メッセージプッシュ実装スキル(コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1 か月前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最高のグラフィック設定
1 か月前
By 尊渡假赌尊渡假赌尊渡假赌
アサシンのクリードシャドウズ:シーシェルリドルソリューション
3週間前
By DDD
Windows11 KB5054979の新しいものと更新の問題を修正する方法
2週間前
By DDD
Will R.E.P.O.クロスプレイがありますか?
1 か月前
By 尊渡假赌尊渡假赌尊渡假赌

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7554
15


CakePHP チュートリアル
1382
52


Steamのアカウント名の形式は何ですか
83
11


NYTの接続はヒントと回答です
28
96

