首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

如何实现通过POST一个特定结构体,实现在微信客户端创建自定义菜单

2013-08-09 
怎么实现通过POST一个特定结构体,实现在微信客户端创建自定义菜单本帖最后由 flyzq0525 于 2013-08-06 16:

怎么实现通过POST一个特定结构体,实现在微信客户端创建自定义菜单
本帖最后由 flyzq0525 于 2013-08-06 16:55:06 编辑 .net开发微信公众平台,开发者申请,自定义菜单申请全部通过了,现在腾讯开放自定义菜单,搜各种资料,我是这么写的

string responeJsonStr="**********";//json格式
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
            req.Method = "POST";
            req.ContentType = "application/x-www-form-urlencoded";
            Stream reqstream = req.GetRequestStream();
            byte[] b = Encoding.ASCII.GetBytes(responeJsonStr);
            reqstream.Write(b, 0, b.Length);
            StreamReader responseReader = new StreamReader(req.GetResponse().GetResponseStream(), System.Text.Encoding.UTF8);

各位大神,请指教啊,实在看不明白了

怎么实现通过POST一个特定结构体,实现在微信客户端创建 微信 微信自定义菜单? 微信公众平台开发 .Net?POST传输JSON数据
[解决办法]
我写过,给你代码
我是使用的一般处理文件
在ProcessRequest中先判断


        public void ProcessRequest(HttpContext context)
        {
            //根据接口获取积分
            string postStr = "";
            if (context.Application["token"] == null)
            {
                context.Application["token"] = WenXin.GetAccessToken();
                ShowMenu();
            }



GetAccessToken代码

 /// <summary>
        /// 获取自定义菜单token
        /// </summary>
        /// <returns></returns>
        public static string GetAccessToken()
        {
            WebClient webClient = new WebClient();
            Byte[] bytes = webClient.DownloadData(string.Format("{0}&appid={1}&secret={2}", AppUrl, AppID, AppSecret));
            string result = Encoding.GetEncoding("utf-8").GetString(bytes);
            JObject jObj = JObject.Parse(result);
            JToken token = jObj["access_token"];
            return token.ToString().Substring(1, token.ToString().Length - 2);
        }

ShowMenu代码


 /// <summary>
        /// 显示自定义菜单
        /// </summary>
        private void ShowMenu()
        {
            JavaScriptSerializer js = new JavaScriptSerializer();
            Team team = new Team();//自定义菜单的类

            string json = js.Serialize(team);
            var client = new WebClient();
            client.Headers["Content-Type"] = "application/json";
            client.Encoding = Encoding.UTF8;
            var strResult = client.UploadString(string.Format("https://api.weixin.qq.com/cgi-bin/menu/create?access_token={0}", HttpContext.Current.Application["token"]), json);
            HttpContext.Current.Response.Write(strResult);


        }

热点排行