2014-07-25 改进自定义菜单与使用SVN进行协同开发

  今天是在吾索实习的第13天。今天没有做过多的代码设计,只进行了一些代码的分析与进一步优化。其中,发现创建自定义菜单的关键代码书写可分为两部分:

  1. JSON格式的字符串在.net中的语法书写:

     1         string ResponseJsonStr = @"{
     2                                         ""button"":[
     3                                         {
     4                                             ""type"":""click"",
     5                                             ""name"":""技术交流"",
     6                                             ""key"":""V1001_TODAY_MUSIC""
     7                                         },
     8                                         {
     9                                             ""type"":""click"",
    10                                             ""name"":""定位打卡"",
    11                                             ""key"":""V1001_TODAY_SINGER""
    12                                         },
    13                                         {
    14                                             ""name"":""..."",
    15                                             ""sub_button"":[
    16                                             {
    17                                                 ""type"":""view"",
    18                                                 ""name"":""搜索"",
    19                                                 ""url"":""http://www.soso.com/""
    20                                             },
    21                                             {
    22                                                 ""type"":""view"",
    23                                                 ""name"":""视频"",
    24                                                 ""url"":""http://v.qq.com/""
    25                                             },
    26                                             {
    27                                                 ""type"":""click"",
    28                                                 ""name"":""赞一下我们"",
    29                                                 ""key"":""V1001_GOOD""
    30                                             }]
    31                                         }]
    32                                    }";
  2. 把URL与JSON数据包整合在一起,并以字符串形式返回(其中posturl存放URL,postData存放JSON字符串)
     1         Stream outstream = null;
     2         Stream instream = null;
     3         StreamReader sr = null;
     4         HttpWebResponse response = null;
     5         HttpWebRequest request = null;
     6         Encoding encoding = Encoding.UTF8;
     7         byte[] data = encoding.GetBytes(postData); //字符串编码为字节序列
     8         // 准备请求...
     9         try
    10         {
    11             // 设置参数
    12             request = WebRequest.Create(posturl) as HttpWebRequest;
    13             CookieContainer cookieContainer = new CookieContainer();
    14             request.CookieContainer = cookieContainer;
    15             request.AllowAutoRedirect = true;
    16             request.Method = "POST";
    17             request.ContentType = "application/x-www-form-urlencoded";
    18             request.ContentLength = data.Length;
    19             outstream = request.GetRequestStream();
    20             outstream.Write(data, 0, data.Length); //写入参数
    21             outstream.Close();
    22             //发送请求并获取相应回应数据
    23             response = request.GetResponse() as HttpWebResponse;
    24             //直到request.GetResponse()程序才开始向目标网页发送Post请求
    25             instream = response.GetResponseStream();
    26             sr = new StreamReader(instream, encoding);
    27             //返回结果网页(html)代码
    28             string content = sr.ReadToEnd();
    29             string err = string.Empty;
    30             return content;
    31         }
    32         catch (Exception ex)
    33         {
    34
    35             string err = ex.Message;
    36             Response.Write(err);
    37             return string.Empty;
    38         }  

  另外,今天我们还开通了SVN托管服务,以达到协同开发及控制源码版本。因为我们实习团队的人员游走于各自不同的地方,所以一台互联网环境的SVN服务器对我们来说是很重要的,所以SVN托管服务对于我们的协同开发是必不可少的。

  最后,对于把URL与JSON字符串整合的代码,因我们是在互联网上找的加上对部分类的不熟悉,所以经过我们的分析,只能了解到一个大概,不能明确地说出每一句的作用是什么。希望有经验的朋友们能帮我们解释一下,特别是:outstream.Write(data, 0, data.Length)这句,是写入参数,但是把数据写入到哪里呢,还是把数据存入Write这个参数中呢;另外还有的一些类与函数,如:cookieContainer、GetRequestStream()、GetResponseStream、StreamReader,虽然在网上找过它们的作用,但真正来说还不能清楚地说出它们的真正含义。谢谢!

2014-07-25 改进自定义菜单与使用SVN进行协同开发

时间: 2024-10-05 04:58:47

2014-07-25 改进自定义菜单与使用SVN进行协同开发的相关文章

微信公众平台自定义菜单及高级接口PHP SDK

本文介绍介绍微信公众平台自定义菜单及高级接口的PHP SDK及使用方法. 作者 方倍工作室 修正记录: 2014.05.03 v1.0 方倍工作室 http://www.cnblogs.com/txw1958/ SDK 源码: 1 /* 2 方倍工作室 http://www.cnblogs.com/txw1958/ 3 CopyRight 2014 www.doucube.com All Rights Reserved 4 */ 5 6 class class_weixin_adv 7 { 8

关于微信公众平台的自定义菜单

在微信公众平台中,菜单是可以配置的,分为两种,登陆微信公众平台账号,在后台管理界面,可以进行手动配置,登陆地址:https://mp.weixin.qq.com/ 温馨提示:服务号开通即带自定义菜单,而订阅号要花钱才能开通的哦. 手动配置的东西很多的,这样不用写后台,就可以让公众号工作了,但功能有限,成为开发者就不同了,可以做随心所欲的开发. 说说成为开发者后的自定义菜单配置,首先进入开发者中心,在上面有开发者ID,复制AppID,和AppSecret(应用密钥),一会有用.向下拉,点击开发者工

Java企业微信开发_04_自定义菜单

一.本节要点 1.菜单相关实体类的封装 参考官方文档中的请求包的内容,对菜单相关实体类进行封装. 这里需要格外注意的是,企业微信中请求包的数据是Json字符串格式的,而不是xml格式.关于json序列化的问题请参考上一节   Java企业微信开发_03_通讯录同步 2.创建菜单的接口 public static String create_menu_url = "https://qyapi.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS

[c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单

前7篇把最基础的消息接收和回复全做完了,  也把高级接口的入口和分拆处理写好了空方法,  此篇接着介绍微信的9大高级接口, 并着重讲解其中的自定义菜单. 微信9大接口为: 1.语音识别接口 2.客服接口 3.OAuth2.0 网页授权接口 4.生成带参数的二维码接口 5.获取用户地理位置接口 6.获取用户基本信息接口 7.获取关注者列表接口 8.用户分组接口 9.上传下载多媒体文件接口 具体介绍: 1. 语音识别 功能描述:通过语音识别接口,用户发送的语音,将同时给出语音识别出的文本内容. 实用

微信公众平台自定义菜单

之前申请了一个订阅号,当准备大张旗鼓的开始创建自定义菜单的时候发现自定义菜单不针对订阅号开放,没有办法,只好再申请服务号,问题又产生了,服务号不针对个人 开放,经过一系列的折腾,不能不说我最后还是申请到了一个服务号(xiaofeiyu_super),还是蛮感谢腾讯审核的那个人的,虽然不知道是哪位,并且之前也给我拒绝过一次. 废话少说,也不再扯些自定义菜单有什么好处,我想对于大多说我们来说,就只是为了好玩,发现有这么个东西,便想着去玩玩.还是开始今天的主题,怎样才能生成自己的 菜单吧.其实对于自定

SSM 框架 微信自定义菜单 快递接口 SpringMVC mybatis redis shiro ehcache websocket

A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势D 集成安全权限框架shiro  Shiro 是一个用 Java 语言实现的框架,通过一

[052] 微信公众平台开发视频公开课第2讲-自定义菜单开发讲解

微信公众平台开发视频公开课第2讲将为大家讲解自定义菜单的相关知识,时间是2014年5月24日20:00-22:00.本次课程的大纲如下: 1.自定义菜单简介 1)如何获得菜单权限 2)菜单按钮分类(click和view) 2.编辑模式下的菜单使用 1)创建菜单 2)预览发布 3)注意事项 3.开发模式下的菜单使用 1)菜单接口介绍 2)如何发起https请求(两种方法,IBM JDK环境) 3)获取access_token 4)如何封装菜单结构 5)创建菜单 6)处理菜单点击事件 7)菜单的查询

java 微信自定义菜单 java微信接口开发 公众平台 SSM redis shiro 多数据源

获取[下载地址]   QQ: 313596790官网 http://www.fhadmin.org/A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都

《C#微信开发系列(2)-自定义菜单管理》

2.0自定义菜单管理 ①接口说明: 微信服务号聊天窗口下面的菜单项(有的公众号有启用有的则没有),这个可以在编辑模式简单配置,也可以在开发模式代码配置.微信公众平台开发者文档:微信公众号开发平台创建自定义菜单,可以看到创建菜单的一些注意事项,下面的使用网页调试工具调试该接口,只是调试接口是否可以正常调用,并不是直接创建菜单,根据微信自定义菜单管理文档菜单事件可分为两种: click: 用户点击click类型按钮后,微信服务器会通过消息接口推送消息类型为event 的结构给开发者(参考消息接口指南