• <rt id="ucmdy"></rt>
    <i id="ucmdy"></i>
      \r\n????\r\n????

      \r\n?????<\/asp:Literal>\r\n????<\/p>\r\n????<\/form>\r\n<\/body>\r\n<\/html><\/pre>\n

      復制代碼<\/span> 代碼如下:<\/p>\n

      using?System;\r\nusing?System.Collections;\r\nusing?System.Configuration;\r\nusing?System.Data;\r\nusing?System.Linq;\r\nusing?System.Web;\r\nusing?System.Web.Security;\r\nusing?System.Web.UI;\r\nusing?System.Web.UI.HtmlControls;\r\nusing?System.Web.UI.WebControls;\r\nusing?System.Web.UI.WebControls.WebParts;\r\nusing?System.Xml.Linq;\r\nnamespace?guotaotao_weixin\r\n{\r\n????public?partial?class?cm?:?System.Web.UI.Page\r\n????{\r\n????????protected?void?Page_Load(object?sender,?EventArgs?e)\r\n????????{\r\n????????????if?(!IsPostBack)\r\n????????????{\r\n????????????????weixin?wx?=?new?weixin();\r\n????????????????\/\/lt_msg.Text?=?wx.GetAccessToken();\r\n????????????????lt_msg.Text?=?wx.DelMenu();\r\n????????????????lt_msg.Text?+=?wx.SetMenu();\r\n????????????}\r\n????????}\r\n????}\r\n}<\/pre>\n

      復制代碼<\/span> 代碼如下:<\/p>\n

      namespace?guotaotao_weixin?{\r\n????\r\n????public?partial?class?cm?{\r\n????????\/\/\/?\r\n????????\/\/\/?form1?控件。\r\n????????\/\/\/?<\/summary>\r\n????????\/\/\/?\r\n????????\/\/\/?自動生成的字段。\r\n????????\/\/\/?若要進行修改,請將字段聲明從設計器文件移到代碼隱藏文件。\r\n????????\/\/\/?<\/remarks>\r\n????????protected?global::System.Web.UI.HtmlControls.HtmlForm?form1;\r\n????????\/\/\/?\r\n????????\/\/\/?lt_msg?控件。\r\n????????\/\/\/?<\/summary>\r\n????????\/\/\/?\r\n????????\/\/\/?自動生成的字段。\r\n????????\/\/\/?若要進行修改,請將字段聲明從設計器文件移到代碼隱藏文件。\r\n????????\/\/\/?<\/remarks>\r\n????????protected?global::System.Web.UI.WebControls.Literal?lt_msg;\r\n????}\r\n}<\/pre>\n

      復制代碼<\/span> 代碼如下:<\/p>\n

      using?System;\r\nusing?System.Data;\r\nusing?System.Configuration;\r\nusing?System.Linq;\r\nusing?System.Web;\r\nusing?System.Web.Security;\r\nusing?System.Web.UI;\r\nusing?System.Web.UI.HtmlControls;\r\nusing?System.Web.UI.WebControls;\r\nusing?System.Web.UI.WebControls.WebParts;\r\nusing?System.Xml.Linq;\r\nusing?guotaotao_weixin.database;\r\nusing?guotaotao.database;\r\nnamespace?guotaotao_weixin\r\n{\r\n????public?class?guotaotao\r\n????{\r\n????????private?string?_content?=?\"\";\r\n????????private?string?_FromUserName?=?\"\";\r\n????????public?int?msgType?=?0;\r\n????????public?int?isFirst?=?0;\r\n????????public?int?pid?=?0;\r\n????????#region?\"構造函數(shù)\"\r\n????????????public?guotaotao()\r\n????????????{\r\n????????????}\r\n????????????public?guotaotao(string?content)\r\n????????????{\r\n????????????????this._content?=?content;\r\n????????????}\r\n????????????public?guotaotao(string?content,string?FromUserName)\r\n????????????{\r\n????????????????this._content?=?content;\r\n????????????????this._FromUserName?=?FromUserName;\r\n????????????}\r\n????????#endregion\r\n?????????\r\n????????public?string?createMenuDate()\r\n????????{\r\n????????????string?postData?=?\"{\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"button\\\":[?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"name\\\":\\\"產品\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"sub_button\\\":[\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"無糖系列\(zhòng)\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_001001\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"干果系列\(zhòng)\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_001002\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"休閑系列\(zhòng)\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_001003\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"兒童系列\(zhòng)\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_001004\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"?}]\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"name\\\":\\\"活動\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"sub_button\\\":[\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"抽獎\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_002001\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"view\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"獲獎名單\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"url\\\":\\\"http:\/\/www.aaa.com\/apps\/honor_list.aspx\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"click\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"優(yōu)惠券\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"key\\\":\\\"gtt_menu_002003\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"?}]\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"name\\\":\\\"幫助\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"\\\"sub_button\\\":[\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"view\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"關于我們\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"url\\\":\\\"http:\/\/www.aaa.com\/apps\/aboutus.aspx\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"view\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"聯(lián)系我們\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"url\\\":\\\"http:\/\/www.aaa.com\/apps\/contactus.aspx\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"view\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"查詢訂單\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"url\\\":\\\"http:\/\/www.aaa.com\/apps\/orders_chaxun.aspx\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"},\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"{?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"type\\\":\\\"view\\\",\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"name\\\":\\\"留言反饋\\\",?\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"???\\\"url\\\":\\\"http:\/\/www.aaa.com\/apps\/feedback.aspx\\\"\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"?}]\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"}]\"?+?\"\\r\\n\";\r\n????????????postData?+=?\"}\"?+?\"\\r\\n\";\r\n????????????return?postData;\r\n????????}\r\n????}\r\n}<\/pre>\n


      菜單中的URL地址換成自己的<\/p>\n

      復制代碼<\/span> 代碼如下:<\/p>\n

      using?System;\r\nusing?System.Web.Security;\r\nusing?System.Xml;\r\nusing?aaa_weixin.database;\r\nusing?Newtonsoft.Json;\r\nnamespace?aaa_weixin\r\n{\r\n????public?class?weixin\r\n????{\r\n????????private?string?Token?=?\"\";?\/\/微信里面開發(fā)者模式Token\r\n????????private?string?devlopID?=?\"\";\/\/微信里面開發(fā)者模式:開發(fā)者ID\r\n????????private?string?devlogPsw?=?\"\";\/\/微信里面開發(fā)者模式:?開發(fā)者密碼\r\n????????public?string?AccessToken?=?\"\";?\/\/獲取的通行證\r\n????????public?void?Auth()\r\n????????{\r\n????????????string?echoStr?=?System.Web.HttpContext.Current.Request.QueryString[\"echoStr\"];\r\n????????????if?(CheckSignature())\r\n????????????{\r\n????????????????if?(!string.IsNullOrEmpty(echoStr))\r\n????????????????{\r\n????????????????????System.Web.HttpContext.Current.Response.Write(echoStr);\r\n????????????????????System.Web.HttpContext.Current.Response.End();\r\n????????????????}\r\n????????????}\r\n????????}\r\n????????public?string?GetAccessToken()?\/\/獲取通行證\r\n????????{????????????\r\n????????????string?url_token?=?\"https:\/\/api.weixin.qq.com\/cgi-bin\/token?grant_type=client_credential&appid=\"?+?devlopID?+?\"&secret=\"?+?devlogPsw;\r\n????????????string?result?=?func.webRequestGet(url_token);\r\n????????????accessToken?deserializedProduct?=?(accessToken)JsonConvert.DeserializeObject(result,?typeof(accessToken));\r\n????????????this.AccessToken??=?deserializedProduct.access_Token;\r\n????????????return?this.AccessToken;\r\n????????}\r\n????????public?string?GetMenu()?\/\/獲取當前菜單情況\r\n????????{\r\n????????????string?url_Menu_Get?=?\"https:\/\/api.weixin.qq.com\/cgi-bin\/menu\/get?access_token=\"?+?this.AccessToken;\r\n????????????string?output?=?func.webRequestGet(url_Menu_Get);\r\n????????????\/\/wxErr?deserializedProduct?=?(wxErr)JsonConvert.DeserializeObject(output,?typeof(wxErr));\r\n????????????\/\/return?deserializedProduct.errmsg;\r\n????????????return?output;\r\n????????}\r\n????????public?string?SetMenu()?\/\/設置最新菜單\r\n????????{\r\n????????????string?url_Menu_Create?=?\"https:\/\/api.weixin.qq.com\/cgi-bin\/menu\/create?access_token=\"?+?this.GetAccessToken();\r\n????????????aaa?gtt?=?new?aaa();\r\n????????????string?postData?=?gtt.createMenuDate();\r\n????????????string?result?=?func.webRequestPost(url_Menu_Create,postData);\r\n????????????return?result;\r\n????????}\r\n????????public?string?DelMenu()?\/\/刪除菜單\r\n????????{\r\n????????????string?url_Menu_Delete?=?\"https:\/\/api.weixin.qq.com\/cgi-bin\/menu\/delete?access_token=\"?+?this.GetAccessToken();\r\n????????????string?result?=?func.webRequestGet(url_Menu_Delete);\r\n????????????return?result;\r\n????????}\r\n????????\/\/\/?\r\n????????\/\/\/?驗證微信簽名\r\n????????\/\/\/?<\/summary>\r\n????????\/\/\/?*?將token、timestamp、nonce三個參數(shù)進行字典序排序\r\n????????\/\/\/?*?將三個參數(shù)字符串拼接成一個字符串進行sha1加密\r\n????????\/\/\/?*?開發(fā)者獲得加密后的字符串可與signature對比,標識該請求來源于微信。\r\n????????\/\/\/?<\/returns>\r\n????????private?bool?CheckSignature()\r\n????????{\r\n????????????string?signature?=?System.Web.HttpContext.Current.Request.QueryString[\"signature\"];\r\n????????????string?timestamp?=?System.Web.HttpContext.Current.Request.QueryString[\"timestamp\"];\r\n????????????string?nonce?=?System.Web.HttpContext.Current.Request.QueryString[\"nonce\"];\r\n????????????string[]?ArrTmp?=?{?Token,?timestamp,?nonce?};\r\n????????????Array.Sort(ArrTmp);?????\/\/字典排序\r\n????????????string?tmpStr?=?string.Join(\"\",?ArrTmp);\r\n????????????tmpStr?=?FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr,?\"SHA1\");\r\n????????????tmpStr?=?tmpStr.ToLower();\r\n????????????if?(tmpStr?==?signature)\r\n????????????{\r\n????????????????return?true;\r\n????????????}\r\n????????????else\r\n????????????{\r\n????????????????return?false;\r\n????????????}\r\n????????}\r\n????}\r\n????public?class?wxErr\r\n????{\r\n????????private?int?Errcode;\r\n????????public?int?errcode\r\n????????{\r\n????????????get?{?return?Errcode;?}\r\n????????????set?{?Errcode?=?value;?}\r\n????????}\r\n????????private?string?Errmsg;\r\n????????public?string?errmsg\r\n????????{\r\n????????????get?{?return?Errmsg;?}\r\n????????????set?{?Errmsg?=?value;?}\r\n????????}\r\n????}\r\n????public?class?accessToken\r\n????{\r\n????????private?string?access_token;\r\n????????public?string?access_Token\r\n????????{\r\n????????????get?{?return?access_token;?}\r\n????????????set?{?access_token?=?value;?}\r\n????????}\r\n????????private?int?expires_in;\r\n????????public?int?expires_In\r\n????????{\r\n????????????get?{?return?expires_in;?}\r\n????????????set?{?expires_in?=?value;?}\r\n????????}?\r\n????}\r\n?}<\/pre>"}	
      	
      
      
      
      
      
      
      

      国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

      Rumah applet WeChat pembangunan WeChat 使用c#開發(fā)公眾平臺自定義菜單功能實例代碼

      使用c#開發(fā)公眾平臺自定義菜單功能實例代碼

      Mar 27, 2017 pm 02:01 PM

      微信公眾平臺服務號開放了自定義菜單API,本案例介紹C#開發(fā)微信公眾號自定義菜單功能。在此基礎上可以開發(fā)更完善的自定義菜單管理功能

      復制代碼 代碼如下:

      <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="cm.aspx.cs" Inherits="guotaotao_weixin.cm" %>
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" >
      <head runat="server">
      ????<title>test</title>
      </head>
      <body>
      ????<form id="form1" runat="server">
      ????<p>
      ?????<asp:Literal ID="lt_msg" runat="server" ></asp:Literal>
      ????</p>
      ????</form>
      </body>
      </html>

      復制代碼 代碼如下:

      using?System;
      using?System.Collections;
      using?System.Configuration;
      using?System.Data;
      using?System.Linq;
      using?System.Web;
      using?System.Web.Security;
      using?System.Web.UI;
      using?System.Web.UI.HtmlControls;
      using?System.Web.UI.WebControls;
      using?System.Web.UI.WebControls.WebParts;
      using?System.Xml.Linq;
      namespace?guotaotao_weixin
      {
      ????public?partial?class?cm?:?System.Web.UI.Page
      ????{
      ????????protected?void?Page_Load(object?sender,?EventArgs?e)
      ????????{
      ????????????if?(!IsPostBack)
      ????????????{
      ????????????????weixin?wx?=?new?weixin();
      ????????????????//lt_msg.Text?=?wx.GetAccessToken();
      ????????????????lt_msg.Text?=?wx.DelMenu();
      ????????????????lt_msg.Text?+=?wx.SetMenu();
      ????????????}
      ????????}
      ????}
      }

      復制代碼 代碼如下:

      namespace?guotaotao_weixin?{
      ????
      ????public?partial?class?cm?{
      ????????///?<summary>
      ????????///?form1?控件。
      ????????///?</summary>
      ????????///?<remarks>
      ????????///?自動生成的字段。
      ????????///?若要進行修改,請將字段聲明從設計器文件移到代碼隱藏文件。
      ????????///?</remarks>
      ????????protected?global::System.Web.UI.HtmlControls.HtmlForm?form1;
      ????????///?<summary>
      ????????///?lt_msg?控件。
      ????????///?</summary>
      ????????///?<remarks>
      ????????///?自動生成的字段。
      ????????///?若要進行修改,請將字段聲明從設計器文件移到代碼隱藏文件。
      ????????///?</remarks>
      ????????protected?global::System.Web.UI.WebControls.Literal?lt_msg;
      ????}
      }

      復制代碼 代碼如下:

      using?System;
      using?System.Data;
      using?System.Configuration;
      using?System.Linq;
      using?System.Web;
      using?System.Web.Security;
      using?System.Web.UI;
      using?System.Web.UI.HtmlControls;
      using?System.Web.UI.WebControls;
      using?System.Web.UI.WebControls.WebParts;
      using?System.Xml.Linq;
      using?guotaotao_weixin.database;
      using?guotaotao.database;
      namespace?guotaotao_weixin
      {
      ????public?class?guotaotao
      ????{
      ????????private?string?_content?=?"";
      ????????private?string?_FromUserName?=?"";
      ????????public?int?msgType?=?0;
      ????????public?int?isFirst?=?0;
      ????????public?int?pid?=?0;
      ????????#region?"構造函數(shù)"
      ????????????public?guotaotao()
      ????????????{
      ????????????}
      ????????????public?guotaotao(string?content)
      ????????????{
      ????????????????this._content?=?content;
      ????????????}
      ????????????public?guotaotao(string?content,string?FromUserName)
      ????????????{
      ????????????????this._content?=?content;
      ????????????????this._FromUserName?=?FromUserName;
      ????????????}
      ????????#endregion
      ?????????
      ????????public?string?createMenuDate()
      ????????{
      ????????????string?postData?=?"{"?+?"\r\n";
      ????????????postData?+=?"\"button\":[?"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"\"name\":\"產品\","?+?"\r\n";
      ????????????postData?+=?"\"sub_button\":["?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"無糖系列\(zhòng)",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_001001\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"干果系列\(zhòng)",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_001002\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"休閑系列\(zhòng)",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_001003\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"兒童系列\(zhòng)",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_001004\""?+?"\r\n";
      ????????????postData?+=?"?}]"?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{"?+?"\r\n";
      ????????????postData?+=?"\"name\":\"活動\",?"?+?"\r\n";
      ????????????postData?+=?"\"sub_button\":["?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"抽獎\",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_002001\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"view\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"獲獎名單\",?"?+?"\r\n";
      ????????????postData?+=?"???\"url\":\"http://www.aaa.com/apps/honor_list.aspx\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"click\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"優(yōu)惠券\",?"?+?"\r\n";
      ????????????postData?+=?"???\"key\":\"gtt_menu_002003\""?+?"\r\n";
      ????????????postData?+=?"?}]"?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{"?+?"\r\n";
      ????????????postData?+=?"\"name\":\"幫助\","?+?"\r\n";
      ????????????postData?+=?"\"sub_button\":["?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"view\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"關于我們\",?"?+?"\r\n";
      ????????????postData?+=?"???\"url\":\"http://www.aaa.com/apps/aboutus.aspx\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"view\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"聯(lián)系我們\",?"?+?"\r\n";
      ????????????postData?+=?"???\"url\":\"http://www.aaa.com/apps/contactus.aspx\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"view\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"查詢訂單\",?"?+?"\r\n";
      ????????????postData?+=?"???\"url\":\"http://www.aaa.com/apps/orders_chaxun.aspx\""?+?"\r\n";
      ????????????postData?+=?"},"?+?"\r\n";
      ????????????postData?+=?"{?"?+?"\r\n";
      ????????????postData?+=?"???\"type\":\"view\","?+?"\r\n";
      ????????????postData?+=?"???\"name\":\"留言反饋\",?"?+?"\r\n";
      ????????????postData?+=?"???\"url\":\"http://www.aaa.com/apps/feedback.aspx\""?+?"\r\n";
      ????????????postData?+=?"?}]"?+?"\r\n";
      ????????????postData?+=?"}]"?+?"\r\n";
      ????????????postData?+=?"}"?+?"\r\n";
      ????????????return?postData;
      ????????}
      ????}
      }


      菜單中的URL地址換成自己的

      復制代碼 代碼如下:

      using?System;
      using?System.Web.Security;
      using?System.Xml;
      using?aaa_weixin.database;
      using?Newtonsoft.Json;
      namespace?aaa_weixin
      {
      ????public?class?weixin
      ????{
      ????????private?string?Token?=?"";?//微信里面開發(fā)者模式Token
      ????????private?string?devlopID?=?"";//微信里面開發(fā)者模式:開發(fā)者ID
      ????????private?string?devlogPsw?=?"";//微信里面開發(fā)者模式:?開發(fā)者密碼
      ????????public?string?AccessToken?=?"";?//獲取的通行證
      ????????public?void?Auth()
      ????????{
      ????????????string?echoStr?=?System.Web.HttpContext.Current.Request.QueryString["echoStr"];
      ????????????if?(CheckSignature())
      ????????????{
      ????????????????if?(!string.IsNullOrEmpty(echoStr))
      ????????????????{
      ????????????????????System.Web.HttpContext.Current.Response.Write(echoStr);
      ????????????????????System.Web.HttpContext.Current.Response.End();
      ????????????????}
      ????????????}
      ????????}
      ????????public?string?GetAccessToken()?//獲取通行證
      ????????{????????????
      ????????????string?url_token?=?"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="?+?devlopID?+?"&secret="?+?devlogPsw;
      ????????????string?result?=?func.webRequestGet(url_token);
      ????????????accessToken?deserializedProduct?=?(accessToken)JsonConvert.DeserializeObject(result,?typeof(accessToken));
      ????????????this.AccessToken??=?deserializedProduct.access_Token;
      ????????????return?this.AccessToken;
      ????????}
      ????????public?string?GetMenu()?//獲取當前菜單情況
      ????????{
      ????????????string?url_Menu_Get?=?"https://api.weixin.qq.com/cgi-bin/menu/get?access_token="?+?this.AccessToken;
      ????????????string?output?=?func.webRequestGet(url_Menu_Get);
      ????????????//wxErr?deserializedProduct?=?(wxErr)JsonConvert.DeserializeObject(output,?typeof(wxErr));
      ????????????//return?deserializedProduct.errmsg;
      ????????????return?output;
      ????????}
      ????????public?string?SetMenu()?//設置最新菜單
      ????????{
      ????????????string?url_Menu_Create?=?"https://api.weixin.qq.com/cgi-bin/menu/create?access_token="?+?this.GetAccessToken();
      ????????????aaa?gtt?=?new?aaa();
      ????????????string?postData?=?gtt.createMenuDate();
      ????????????string?result?=?func.webRequestPost(url_Menu_Create,postData);
      ????????????return?result;
      ????????}
      ????????public?string?DelMenu()?//刪除菜單
      ????????{
      ????????????string?url_Menu_Delete?=?"https://api.weixin.qq.com/cgi-bin/menu/delete?access_token="?+?this.GetAccessToken();
      ????????????string?result?=?func.webRequestGet(url_Menu_Delete);
      ????????????return?result;
      ????????}
      ????????///?<summary>
      ????????///?驗證微信簽名
      ????????///?</summary>
      ????????///?*?將token、timestamp、nonce三個參數(shù)進行字典序排序
      ????????///?*?將三個參數(shù)字符串拼接成一個字符串進行sha1加密
      ????????///?*?開發(fā)者獲得加密后的字符串可與signature對比,標識該請求來源于微信。
      ????????///?<returns></returns>
      ????????private?bool?CheckSignature()
      ????????{
      ????????????string?signature?=?System.Web.HttpContext.Current.Request.QueryString["signature"];
      ????????????string?timestamp?=?System.Web.HttpContext.Current.Request.QueryString["timestamp"];
      ????????????string?nonce?=?System.Web.HttpContext.Current.Request.QueryString["nonce"];
      ????????????string[]?ArrTmp?=?{?Token,?timestamp,?nonce?};
      ????????????Array.Sort(ArrTmp);?????//字典排序
      ????????????string?tmpStr?=?string.Join("",?ArrTmp);
      ????????????tmpStr?=?FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr,?"SHA1");
      ????????????tmpStr?=?tmpStr.ToLower();
      ????????????if?(tmpStr?==?signature)
      ????????????{
      ????????????????return?true;
      ????????????}
      ????????????else
      ????????????{
      ????????????????return?false;
      ????????????}
      ????????}
      ????}
      ????public?class?wxErr
      ????{
      ????????private?int?Errcode;
      ????????public?int?errcode
      ????????{
      ????????????get?{?return?Errcode;?}
      ????????????set?{?Errcode?=?value;?}
      ????????}
      ????????private?string?Errmsg;
      ????????public?string?errmsg
      ????????{
      ????????????get?{?return?Errmsg;?}
      ????????????set?{?Errmsg?=?value;?}
      ????????}
      ????}
      ????public?class?accessToken
      ????{
      ????????private?string?access_token;
      ????????public?string?access_Token
      ????????{
      ????????????get?{?return?access_token;?}
      ????????????set?{?access_token?=?value;?}
      ????????}
      ????????private?int?expires_in;
      ????????public?int?expires_In
      ????????{
      ????????????get?{?return?expires_in;?}
      ????????????set?{?expires_in?=?value;?}
      ????????}?
      ????}
      ?}

      Atas ialah kandungan terperinci 使用c#開發(fā)公眾平臺自定義菜單功能實例代碼. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

      Kenyataan Laman Web ini
      Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

      Alat AI Hot

      Undress AI Tool

      Undress AI Tool

      Gambar buka pakaian secara percuma

      Undresser.AI Undress

      Undresser.AI Undress

      Apl berkuasa AI untuk mencipta foto bogel yang realistik

      AI Clothes Remover

      AI Clothes Remover

      Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

      Clothoff.io

      Clothoff.io

      Penyingkiran pakaian AI

      Video Face Swap

      Video Face Swap

      Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

      Alat panas

      Notepad++7.3.1

      Notepad++7.3.1

      Editor kod yang mudah digunakan dan percuma

      SublimeText3 versi Cina

      SublimeText3 versi Cina

      Versi Cina, sangat mudah digunakan

      Hantar Studio 13.0.1

      Hantar Studio 13.0.1

      Persekitaran pembangunan bersepadu PHP yang berkuasa

      Dreamweaver CS6

      Dreamweaver CS6

      Alat pembangunan web visual

      SublimeText3 versi Mac

      SublimeText3 versi Mac

      Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

      Topik panas

      Tutorial PHP
      1502
      276