微信公眾平臺設備功能是微信為服務號提供的物聯網解決方案,設備功能建立在微信硬件平臺之上。設備功能允許硬件設備廠商通過服務號,將用戶與其擁有的智能設備相連。
通過微信硬件平臺規定的連接協議,各種智能設備如藍牙設備、WIFI設備和其他移動網絡設備都能方便的接入微信,完成設備、人、服務三者的連接。
1.1 申請
服務號目前不向個人開放申請,而且申請一個服務號流程比較復雜繁瑣,審核時間也很長。為方便開發者開發調試,微信提供微信公眾平臺接口測試帳號,允許開發者在沒有公眾號的情況下,直接體驗和測試公眾平臺的高級接口。測試賬號折疊在訂閱號中,頭像與名稱不可更改。除了模版消息功能外,測試號擁有服務號所具有的功能。測試號可以使用一年!
微信公眾平臺接口測試帳號申請地址://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
點擊登陸,會彈出一個二維碼。
打開手機微信掃一下。
點擊確認登陸,網頁會自動跳轉到如下:
到了這里算是登陸成功,下面進行配置。
1.2 URL配置
登錄成功后會看到一個接口配置信息,這里就是與你服務器連接的設置。
填寫接口配置信息,信息需要你有自己的服務器資源,填寫的URL需要正確響應微信發送的Token驗證。其中URL是開發者用來接收微信消息和事件的接口URL。Token可由開發者可以任意填寫,用作生成簽名(該Token會和接口URL中包含的Token進行比對,從而驗證安全性)。
這里需要注意一點,怎么設置才可以使你的服務器能夠正確的響應微信發送的Token驗證。填寫不正確會有如下提示:
點擊窗口中的消息接口使用指南鏈接,選擇新手指南里的接入指南。
在文檔中可以發現下面的內容。
從上面可以看出,點擊提交后微信會向我們填寫的服務器發送幾個參數,然后需要原樣返回出來,所以在提交URL的時候,先在服務器創建接口測試返回echostr參數內容。代碼:
//成為開發者url測試,返回echoStr
public void InterfaceTest()
{
string token = "填寫的token";
if (string.IsNullOrEmpty(token))
{
return;
}
string echoString = HttpContext.Current.Request.QueryString["echoStr"];
string signature = HttpContext.Current.Request.QueryString["signature"];
string timestamp = HttpContext.Current.Request.QueryString["timestamp"];
string nonce = HttpContext.Current.Request.QueryString["nonce"];
if (!string.IsNullOrEmpty(echoString))
{
HttpContext.Current.Response.Write(echoString);
HttpContext.Current.Response.End();
}
}
在一般處理程序ashx的ProcessRequest的方法內調用上面的方法,url填寫的就是這個ashx的服務器地址,token是一個服務器標示,可以隨便輸入,代碼中的token要和申請填寫的一致,成為開發者才能做開發。