首頁 微信小程式 微信開發 微信開發之推播訊息的實現

微信開發之推播訊息的實現

Mar 11, 2017 pm 02:10 PM
微信開發 訊息推播

這篇文章主要介紹了微信開發訊息推送實現程式碼的相關資料,需要的朋友可以參考下

最近做微信公共號的開發,有個需求是這樣的訊息推送,以文本的形式把編輯的訊息寄給微信企業號中的某一個應用群組,這裡做下筆記,以下是整理內容:


##

//定义数据模型
 
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;
 
}
登入後複製

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

以上是微信開發之推播訊息的實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1675
14
CakePHP 教程
1429
52
Laravel 教程
1333
25
PHP教程
1278
29
C# 教程
1257
24
使用Firebase Cloud Messaging(FCM)在PHP應用中實現訊息推播功能 使用Firebase Cloud Messaging(FCM)在PHP應用中實現訊息推播功能 Jul 24, 2023 pm 12:37 PM

使用FirebaseCloudMessaging(FCM)在PHP應用中實現訊息推播功能隨著行動應用的快速發展,即時訊息推播已成為現代應用程式不可或缺的功能之一。 FirebaseCloudMessaging(FCM)是一種跨平台的訊息推播服務,可協助開發者將即時訊息推送到Android和iOS裝置。本文將介紹如何使用FCM在PHP應用中實現訊息推播功

如何在uniapp中實現訊息推播和通知提醒 如何在uniapp中實現訊息推播和通知提醒 Oct 20, 2023 am 11:03 AM

如何在uniapp中實現訊息推播和通知提醒隨著行動互聯網的快速發展,訊息推播和通知提醒成為了行動應用中必不可少的功能。在uniapp中,我們可以透過一些外掛和介面來實現訊息推播和通知提醒。本文將介紹一種在uniapp中實作訊息推播和通知提醒的方法,並提供具體的程式碼範例。一、訊息推播實作訊息推播的前提是我們需要一個後台服務來發送推播訊息,這裡我推薦使用極光推播

高德地圖訊息推送怎麼關閉_高德地圖訊息推送關閉方法 高德地圖訊息推送怎麼關閉_高德地圖訊息推送關閉方法 Apr 01, 2024 pm 03:06 PM

1、開啟手機設置,點選應用,點選應用程式管理。 2、找到並點選進入高德地圖。 3.點選通知管理,關閉允許通知開關即可關閉訊息推播通知。本文以榮耀magic3為例適用於MagicUI5.0系統高德地圖v11.10版本

如何使用PHP框架Lumen開發一個高效率的訊息推播系統,提供及時的推播服務 如何使用PHP框架Lumen開發一個高效率的訊息推播系統,提供及時的推播服務 Jun 27, 2023 am 11:43 AM

隨著行動互聯網的快速發展和用戶需求的變化,訊息推播系統已成為現代應用程式不可或缺的一部分,它能夠實現即時通知、提醒、推廣、社交等功能,為用戶和商業客戶提供更好的體驗和服務。為了滿足這項需求,本文將介紹如何使用PHP框架Lumen開發一個高效率的訊息推播系統,提供及時的推播服務。一、Lumen簡介Lumen是由Laravel框架開發團隊開發的微框架,它是一個

UniApp實作訊息推播與推播服務的設計與開發技巧 UniApp實作訊息推播與推播服務的設計與開發技巧 Jul 04, 2023 pm 12:57 PM

UniApp是一款用於開發跨平台應用程式的框架,可同時在iOS、Android和Web平台上運作。在實現訊息推播功能時,UniApp可以與後端推播服務進行配合,實現訊息推播的設計與開發。一、訊息推播的設計概述在UniApp中實現訊息推播功能,需要設計一個推播服務,用於向App發送推播訊息。推播服務需要實現以下功能:與App建立連線並傳送訊息與App之間的訊息傳

PHP即時通訊功能與訊息推播中間件的關係剖析 PHP即時通訊功能與訊息推播中間件的關係剖析 Aug 10, 2023 pm 12:42 PM

PHP即時通訊功能與訊息推播中間件的關係剖析隨著網路的發展,即時通訊功能在Web應用中的重要性越來越凸顯。即時通訊允許用戶在應用程式中即時發送和接收訊息,可以應用於多種場景,如即時聊天、即時通知等。在PHP領域中,實現即時通訊功能的方式有很多,其中一種常見的方式就是使用訊息推送中間件。本文將介紹PHP即時通訊功能與訊息推播中間件之間的關係,以及如何使用訊息推

PHP開發即時聊天功能的訊息推播服務選擇 PHP開發即時聊天功能的訊息推播服務選擇 Aug 26, 2023 am 11:21 AM

PHP開發即時聊天功能的訊息推播服務選擇引言:隨著網路的快速發展,即時通訊已成為許多網站和應用程式不可或缺的功能。為了實現即時的訊息推播和即時聊天功能,選擇合適的訊息推播服務至關重要。本文將介紹一些常用且適合PHP開發的訊息推播服務,並提供相關程式碼範例。一、WebSocket協議實現WebSocket協議是一種基於TCP的協議,專門用於實現即時的雙向通訊。

快速入門:使用Go語言函數實現簡單的訊息推播功能 快速入門:使用Go語言函數實現簡單的訊息推播功能 Jul 31, 2023 pm 02:09 PM

快速入門:使用Go語言函數實現簡單的訊息推播功能在當今行動互聯網時代,訊息推播已成為各種APP的標配功能。 Go語言是一門快速且有效率的程式語言,非常適合用來開發訊息推播功能。本文將介紹如何使用Go語言函數實作簡單的訊息推播功能,並提供對應的程式碼範例,幫助讀者快速入門。在開始之前,我們需要了解一下訊息推播的基本原理。通常,訊息推送功能需要兩個主要的元件:推播伺服器

See all articles