zoukankan      html  css  js  c++  java
  • http方式的联调经验

        这近在做一个项目,现在刚与厂家做联调。我的系统是windows2008,他的测试机是unix,他本机是XP的。本来用httppost方式给他本机发送中文数据是正常的,但是发送到他的unix上,中文就变化了一大堆问号。开始觉得挺奇怪的,后来有个程序员说要对含有中文的URL进行编码。         

       stringResponse.Append("&Result=" +System.Web.HttpUtility.UrlEncode ("你好啊!") );

    按照上面的方式确实解决了一个问题,但是因为在url传递很多内容,怕是会受到限制,我们就采用了传递XML.   (  request.ContentType = "text/xml;charset=UTF-8";)

               stringResponse.Append("<response>");
                stringResponse.Append("<RequestId>" + _requestId + "</RequestId>");
                stringResponse.Append("<Result>" + _result + "</Result>");
                stringResponse.Append("<CompanyCode>" + _companyCode + "</CompanyCode>");  
                stringResponse.Append("</response>");

    传递过去以后是没有问题,但是在前面多了了一个问号。也确定了双方约定的格式都是utf-8,也不知道为什么。目前没有查到原因。

                userResponse.Result ="1";
                userResponse.RequestId = userRequest.RequestId;
                userResponse.CompanyCode = userRequest.CompanyCode;
                log.Info("操作结果状况:"+userResponse.ToString());
                Response.Write(userResponse.ToString());
                Response.Flush();
               // Response.Close();  //对方接收post数据超时,流没读完就关闭

    还有一个问题是在传递的过程中,我如果将Response.Close();写上,对方会因为等待数据超时而失败。只能将这句话注释掉。具体原因也不知道。

    这些问题都是我联调时的小问题,但是也是现在没想明白的。先记着,以后再看看能不能解决。

  • 相关阅读:
    Centos7搭建OpenNebula云平台
    Python中__new__和__init__的区别与联系
    16个python常用魔法函数
    微信小程序< 1 > ~ Hello 微信小程序
    扬帆起航,再踏征程(一)
    Java 社区平台
    Java 社区平台
    <Android 应用 之路> 一个类似今日头条的APP
    使用标准C读取文件遇到的结构体对齐问题及其解决办法
    编译64位cu文件的设置
  • 原文地址:https://www.cnblogs.com/lss111520/p/3185604.html
Copyright © 2011-2022 走看看