1

今天我在 WP7.5/7.8 中发现了非常奇怪的行为

我正在实施身份验证,我必须发出发布请求,之后我将被重定向到结果页面。

在 WP8 中,我在重定向后得到结果页面。在 WP7.5/7.8 - 我得到重定向结果(StatusCode - 302)。

public void MakeRequest() {
    HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(Consts.Url);
    request.AllowAutoRedirect = true;
    request.Method = "POST";

    request.Headers[HttpRequestHeader.Cookie] = cookie;
    request.BeginGetResponse(new AsyncCallback(ProcessRequest), request);
}

处理响应

private void ProcessRequest(IAsyncResult callbackResult) {
     HttpWebRequest myRequest = (HttpWebRequest)callbackResult.AsyncState;
     using (HttpWebResponse myResponse = (HttpWebResponse)myRequest.EndGetResponse(callbackResult)) {

         if (myResponse.StatusCode != HttpStatusCode.OK) {
             RaiseConnectionError(string.Format("Response from server {0}\n{1}", myResponse.StatusCode, myResponse.StatusDescription));
             return;
            }
      }
 }

我在当前项目的支持中注意到了这种情况。当我使用 ASP.NET MVC 在我的支持上创建相同的情况时,

[HttpPost]
public ActionResult Redirect() {
   return RedirectToAction("Index");
}

// index returns simple view

它适用于 WP7.5 和 8。这很奇怪,因为后端适用于 iOS 和 Android。我看到了类似的问题,人们建议使用自定义 UserAgent(如普通浏览器),但它对我不起作用。

4

0 回答 0