C# HttpWebRequest和WebResponse.GetResponse给出的响应不完整

C# HttpWebRequest和WebResponse.GetResponse给出的响应不完整,c#,httpwebrequest,amazon,response,httpwebresponse,C#,Httpwebrequest,Amazon,Response,Httpwebresponse,我现在很不安,因为我一直收到亚马逊不完整的回复。我正在使用产品广告API,向服务器发出一个ItemLookup请求 C代码非常基本: HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse response = (HttpWebResponse) request.GetResponse(); string resultString; using (StreamReader sr = new

我现在很不安,因为我一直收到亚马逊不完整的回复。我正在使用产品广告API,向服务器发出一个ItemLookup请求

C代码非常基本:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse) request.GetResponse();

string resultString;
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
{
    resultString = sr.ReadToEnd();
}
我收到的字符数是17408-相当稳定,但我也看到了16k左右的东西

它总是这样结束的:

...ount><CurrencyCode>EUR</CurrencyCode><FormattedPrice>EUR 11,33</FormattedPri
…ount>欧元11,33这对我很有效:

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    HttpWebResponse response = (HttpWebResponse) request.GetResponse();
    Stream s = response.GetResponseStream();
    using (StreamReader sr = new StreamReader(s))
    {
        s.Flush();
        resultString = sr.ReadToEnd();

        ...
    }

您是否能够通过在web浏览器中查看URL来复制信息的截断?否。在所有浏览器中都可以正常工作。可能与stream/streamreader中的缓冲有关?试试冲水?现在我有了。这个问题通过刷新解决了,但在我的代码中有几个地方是这样的谢谢大家。我也有类似的问题。我试图冲水,但这样做给了我一个不受支持的例外。你知道怎么解决吗?你可以跳过cast
WebResponse
HttpWebResponse
,因为
GetResponseStream
WebResponse
类的方法。