• 微信公众平台开发学习系列(一):公众平台测试号申请与自定义菜单创建


    最近总有一些任务和微信的功能有联系,所以我开始去尝试如何开发一个微信公众平台。为了方便测试和使用各种功能,我使用的是公众平台测试号。

    首先登陆微信公众平台官网,

    点击进入后,会提供一个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                 return
    11                     Content("failed:" + postModel.Signature + "," + CheckSignature.GetSignature(postModel.Timestamp, postModel.Nonce, token) +
    12                             "。如果您在浏览器中看到这条信息,表明此Url可以填入微信后台。");
    13             }
    14         }
    View Code

    发布到网站后,再点击接口配置信息保存即可验证通过。接下来将自己的网站域名填入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         }
    View Code

    直接运行项目,跳转到http://localhost:****/Home/CreateMenu地址。

    理想状态下是返回ok,然后用微信扫描测试号二维码,即可看到效果。具体菜单有几个一级菜单,几个二级菜单,可以根据实际修改代码。

  • 相关阅读:
    ConfigurableApplicationContext
    JCA-Java加密框架
    Resource通配符路径 ——跟我学spring3
    Spring学习总结(四)——表达式语言 Spring Expression Language
    Spring讲解-----------表达式语言
    java多线程详解(5)-Threadlocal用法
    ThreadLocal 详解
    MessageFormat
    WPF中的导航框架(一)——概述
    在WPF中实现玻璃模糊效果
  • 原文地址:https://www.cnblogs.com/dashuailuoli/p/5087700.html
Copyright © 2020-2023  润新知