最近總有一些任務和微信的功能有聯系,所以我開始去嘗試如何開發一個微信公眾平臺。為了方便測試和使用各種功能,我使用的是公眾平臺測試號。
首先登陸微信公眾平臺官網,
點擊進入后,會提供一個appID和aapsecret,這兩個最為重要。在往下是接口配置信息
因為URL是需要微信驗證的,所以此處要開始寫代碼了。
新建項目后,安裝微信公眾平臺sdk:
代碼如下:
1 [HttpGet] 2 public ActionResult Get(PostModel postModel, string echostr) 3 { 4 if (!CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, token)) 5 { 6 return Content(echostr); //返回隨機字符串則表示驗證通過 7 } 8 else 9 {10 return11 Content("failed:" + postModel.Signature + "," + CheckSignature.GetSignature(postModel.Timestamp, postModel.Nonce, token) +12 "。如果您在瀏覽器中看到這條信息,表明此Url可以填入微信后臺。");13 }14 }
發布到網站后,再點擊接口配置信息保存即可驗證通過。接下來將自己的網站域名填入JS接口安全域名。
到此微信方的配置基本結束,接下來開始創建自定義菜單
代碼如下:
1 public ActionResult CreateMenu() 2 { 3 var token = CommonApi.GetToken(appId, secret); 4 //初始化 5 GetMenuResultFull resultFull = new GetMenuResultFull(); 6 MenuFull_ButtonGroup menu = new MenuFull_ButtonGroup(); 7 menu.button = new List<MenuFull_RootButton>(); 8 menu.button.Add(new MenuFull_RootButton() { key = "link", name = "鏈接", type = ButtonType.view.ToString(), url = "http://www.baidu.com" }); 9 menu.button.Add(new MenuFull_RootButton() { key = "OneClick", name = "圖文鏈接", type = ButtonType.click.ToString() });10 var subButton = new MenuFull_RootButton()11 {12 key = "OneClick",13 name = "二級菜單",14 type = ButtonType.click.ToString(),15 };16 subButton.sub_button = new List<MenuFull_RootButton>();17 subButton.sub_button.Add(new MenuFull_RootButton()18 {19 key = "SubClickRoot_Text",20 name = "文字信息",21 type = ButtonType.click.ToString(),22 });23 subButton.sub_button.Add(new MenuFull_RootButton()24 {25 key = "SubClickRoot_Text",26 name = "文字信息2",27 type = ButtonType.click.ToString(),28 });29 menu.button.Add(subButton);30 resultFull.menu = menu;31 var bg = CommonApi.GetMenuFromJsonResult(resultFull, new ButtonGroup()).menu;32 var result = CommonApi.CreateMenu(token.access_token, bg);33 return Content(result.errmsg);34 }
直接運行項目,跳轉到http://localhost:****/Home/CreateMenu地址。
理想狀態下是返回ok,然后用微信掃描測試號二維碼,即可看到效果。具體菜單有幾個一級菜單,幾個二級菜單,可以根據實際修改代碼。
新聞熱點
疑難解答