zoukankan      html  css  js  c++  java
  • 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,虽然在网上找过它们的作用,但真正来说还不能清楚地说出它们的真正含义。谢谢!

  • 相关阅读:
    datanode报错Problem connecting to server
    使用命令查看hdfs的状态
    Access denied for user root. Superuser privilege is requ
    ElasticSearch默认的分页参数 size
    SparkStreaming Kafka 维护offset
    【容错篇】Spark Streaming的还原药水——Checkpoint
    251 Android 线性与相对布局简介
    250 Android Studio使用指南 总结
    249 如何解决项目导入产生的中文乱码问题
    248 gradle更新问题
  • 原文地址:https://www.cnblogs.com/IamYoung/p/3869207.html
Copyright © 2011-2022 走看看