微信的東西,第一次玩,記錄下全過程,略過申請小程序步驟
1:配置類目,建議在申請小程序的時候多選幾個類目,類目越多,可選的消息模版越多,修改地址(傳送門 路徑: 設(shè)置-基本設(shè)置-服務(wù)類目)
2:設(shè)置推送消息模版地址:傳送門 選擇公共模版,這一步與上一步選擇的類目相關(guān)。愛掏網(wǎng) - it200.com
3:配置服務(wù)器域名+消息推送 地址:傳送門
1):服務(wù)器域名配置:
路徑:開發(fā)-開發(fā)設(shè)置-服務(wù)器域名,前四個都填寫(注意需要80或443端口),如下圖
2):代碼編寫:此步驟是為了給微信服務(wù)器提供驗證用,就是說我們要寫一個接口(GET方式),給微信調(diào)用,具體參數(shù)如下
文檔地址:傳送門參數(shù)描述
signature微信加密簽名,signature結(jié)合了開發(fā)者填寫的token參數(shù)和請求中的timestamp參數(shù)、nonce參數(shù)。愛掏網(wǎng) - it200.com
timestamp時間戳
nonce隨機數(shù)
echostr隨機字符串
以下是我的code,可以直接使用(netcore版本)///
/// 接口認(rèn)證
///
///
///
///
///
///
[HttpGet]
[Route("GetWechatSubscription")]
[SkipResponseDataFilter]
public string WechatSubscription(string echostr, string signature, string timestamp, string nonce)
{
string token = "jdcommonpushmessage123";//此處token需要保存下,第三步會用到
if (!CheckSignature(token, signature, timestamp, nonce))
{
//echostr = "驗證不正確";
throw new UserFriendlyException("token驗證不正確");
}
return echostr;
}
///
/// 驗證微信簽名
///
private bool CheckSignature(string token, string signature, string timestamp, string nonce)
{
string[] ArrTmp = { token, timestamp, nonce };
Array.Sort(ArrTmp);
string tmpStr = string.Join("", ArrTmp);
var data = SHA1.Create().ComputeHash(Encoding.UTF8.GetBytes(tmpStr));
var sb = new StringBuilder();
foreach (var t in data)
{
sb.Append(t.ToString("X2"));
}
tmpStr = sb.ToString();
tmpStr = tmpStr.ToLower();
if (tmpStr == signature)
{
return true;
}
else
{
return false;
}
}
接口寫好了,那怎么調(diào)用呢?請看第三條
3)我們在第一步的時候填寫了服務(wù)器域名,那么
(1)把第二步的接口發(fā)布到上述的服務(wù)器
(2)回到配置服務(wù)器域名的頁面(點擊此處進(jìn)入傳送門),往下拉找到 消息推送進(jìn)入頁面,如下圖
參數(shù)說明:url--就是第二步發(fā)布的接口地址
token--隨便輸入一個32位的字符串(注意,第二步代碼中有 string token = "jdcommonpushmessage123";,這個jd....需要和這個token保持一致)
EncodingAESKey:直接點擊右側(cè)隨機生成即可,編寫代碼的時候沒用到。愛掏網(wǎng) - it200.com
信息加密方式:選擇安全模式。愛掏網(wǎng) - it200.com
數(shù)據(jù)格式:json。愛掏網(wǎng) - it200.com
然后點擊提交,注意:如果能夠提交成功,說明第二步寫的接口沒問題,失敗則是接口有問題,可以查看下參數(shù)名稱、大小寫、返回的參數(shù)大小寫、格式是否與微信要求的一致。愛掏網(wǎng) - it200.com
以上便是服務(wù)端相關(guān)接口,當(dāng)然只是做了這些是不可能調(diào)起下圖內(nèi)容的
還需要前端調(diào)微信下發(fā)權(quán)限接口,點擊進(jìn)入(傳送門)
以上便是小程序信息推送,供大家一起交流。愛掏網(wǎng) - it200.com