马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

C#调用HttpWebRequest post方法

[复制链接]
查看4501 | 回复1 | 2015-2-25 09:24:48 | 显示全部楼层 |阅读模式
客户端通过http协议给服务器端发一个消息,在重启客户端后发送的第一条数据总是不对。
客户端程序如下:
private void ButtonCancel_Click(object sender, EventArgs e)
       {



           string URL = "http://192.168.2.33:8899";
           string meth = "D:/cassion";
           string pars = "{\"MacID\":\"" + MacID.Text + "\",\"Static\":\"" + Static.Text + "\"}";     
           int m = WebSvcCaller.QueryPostWebService(URL, meth, pars);

       }

public static int QueryPostWebService(String URL, String MethodName, string  Pars)
    {
        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(URL + "/" + MethodName);
        request.Method = "POST";
        request.ContentType = "application/x-www-form-urlencoded";
        SetWebRequest(request);
        byte[] data = EncodePars(Pars);
        WriteRequestData(request, data);
        return ReadXmlResponse(request.GetResponse());
    }
服务器端:利用socket监听Post消息
每次客户端重启后点击发送按钮,收到的总是:
"POST /D:/cassion HTTP/1.1\r\nContent-Type: application/x-www-form-urlencoded\r\nHost: 192.168.2.33:8899\r\nContent-Length: 33\r\nExpect: 100-continue\r\nConnection: Keep-Alive\r\n\r\n
以后收到的消息是正确的,如下:
"POST /D:/cassion HTTP/1.1\r\nContent-Type: application/x-www-form-urlencoded\r\nHost: 192.168.2.33:8899\r\nContent-Length: 33\r\nExpect: 100-continue\r\n\r\n{\"MacID\":\"08152654\",\"Static\":\"1\"}
比第一次收到的少了个Connection: Keep-Alive,取代的是要发送的消息


ibcadmin | 2015-2-25 17:26:26 | 显示全部楼层
不晓得
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则