Web服务请求超时问题

时间:2013-12-03 14:51:44

标签: c# web-services

我想与Web服务进行交互,为此我正在使用此代码。

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(@"http://192.168.2.51/loodappSrv/LoodAppsrv.svc/company/insertcompany?Validation_Token=dc6f3d5e-22c7-405f-abb6-4491de140e7e");
req.Method = "POST";
req.ContentType = @"text/json";
JsonComapnyFormat jcf = new JsonComapnyFormat();
string data = jcf.data();//data in json Format {"companyName":"Alpha","departmentId":3}


using (Stream requestStream = req.GetRequestStream())
{
    StreamWriter streamWriter = null;

    try
    {
        //streamWriter = new StreamWriter(requestStream, System.Text.Encoding.Default);

        streamWriter = new StreamWriter(requestStream, System.Text.Encoding.Default);
        streamWriter.Write(data);

    }
    catch (Exception ex)
    {
        throw ex;
    }
    finally
    {
        try
        {
            streamWriter.Close();
            requestStream.Close();
            streamWriter.Dispose();
            streamWriter = null;
            requestStream.Dispose();
        }
        catch
        {
        }
    }
}

HttpWebResponse response = (HttpWebResponse)req.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream);

var result = reader.ReadToEnd();
ViewBag.ABC = result;
return View();

如果我使用Fiddler在给定的URL上发送POST数据,那就完美了(突然响应出来)。但是当我在同一个URL上发送相同的日期时,该消息在HttpWebResponse response = (HttpWebResponse)req.GetResponse();处的异常“操作已超时”中返回。请建议解决方案。

1 个答案:

答案 0 :(得分:0)

您是否尝试过SLaks提到的内容?

JSON文本的MIME媒体类型是 application / json

可以看出here