发送http请求时表单卡住[c#]

时间:2014-02-28 10:43:45

标签: c# http get request

嗨我的代码有问题。当程序第一次运行时,它会在arduino上向我的服务器发送一个http请求。第一次要求总是很慢,我的表格会停留10-20秒。下一个请求工作正常,只有第一个请求和我关闭服务器并尝试请求时才会出现问题。有我的请求功能(我的英语sry):

    private string SubmitData(string postData)
    {
        try
        {
            string req = "";
            req = "http://" + ip + "/" + postData;


            WebRequest request = WebRequest.Create(req);
            request.Method = "GET";
            request.ContentType = "application/x-www-form-urlencoded";


            WebResponse response = request.GetResponse();
            Stream stream = response.GetResponseStream();

            StreamReader sr = new StreamReader(stream);

            String rower = sr.ReadToEnd();

            sr.Close();
            stream.Close();
            return rower;
        }
        catch (Exception ex)
        {
            return "ERR";
        }
    }

1 个答案:

答案 0 :(得分:0)

(将此作为评论发布,但不够酷......)

我无法回答为什么第一个请求很慢,但你确定第一次服务器不是很慢吗?

如果要限制最长等待时间,可以更改超时值

WebRequest.Timeout = 5000; // Units of ms

请参阅http://msdn.microsoft.com/en-us/library/system.net.webrequest.timeout(v=vs.110).aspx'后代类通过抛出WebException并将Status字段设置为WebExceptionStatus.Timeout来发出超时信号。 “

相关问题