4

我对 Windows Phone 上的 Get 方法有疑问。当我执行 Get 方法时,我收到了一些答案,然后我执行了 post 方法,该方法更改了 get 方法的答案,然后我再次检查 get 方法,但它仍然给了我与第一次 Get 相同的答案(不知何故它一直在复制从第一种方法得到答案)。我怎样才能改变它?

Get方法的示例代码:

        HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(URLS.host);
        wr.Method = "GET";
        wr.CookieContainer = cookieContainer;
        wr.BeginGetResponse(new AsyncCallback(GetRequestStreamCallbackListaStrategii), wr);
4

2 回答 2

2

这听起来像一个缓存问题。假设您无法控制或不想更改服务器端响应,您可以尝试在每次调用时添加一个随机查询字符串,看看是否可以修复它。例如,将您的URLS.host值设置为:

URLS.host = String.Format("{0}&rnd={1}", URLS.host, Guid.NewGuid().ToString());
HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(URLS.host);

或者,您可以尝试这篇文章中的解决方案。

HttpWebRequest request = HttpWebRequest.CreateHttp(url);
if (request.Headers == null)
{
   request.Headers = new WebHeaderCollection();
}
request.Headers[HttpRequestHeader.IfModifiedSince] = DateTime.UtcNow.ToString();
于 2013-09-06T12:01:21.380 回答
1

尝试这个:

wr.Headers["Cache-Control"] = "no-cache";
wr.Headers["Pragma"] = "no-cache";
于 2013-09-06T12:02:02.560 回答