Http获取请求在Windows Phone 8中给出禁止响应

时间:2015-05-13 12:20:53

标签: windows-phone-8

使用API​​ URL向BASEn服务器发送登录凭据的HTTP“POST”数据,作为响应,它提供状态200,OK。

 var values = new List<KeyValuePair<string, string>>
                {
                    new KeyValuePair<string, string>("mode", "login"),
                    new KeyValuePair<string, string>("user", logintxtbx.Text),
                    new KeyValuePair<string, string>("password", passtxtbx.Text)

                };

            httpClient = new HttpClient(new HttpClientHandler());
            HttpResponseMessage response = await httpClient.PostAsync("https://xx-yyy.com/auth", new FormUrlEncodedContent(values));                                                                      var strin = response.StatusCode.ToString();
            var responseString = await response.Content.ReadAsStringAsync();
            MessageBox.Show("login Success");
            GetFullResponse(httpClient);
    }

验证我的凭据后,如果我尝试通过使用其他网址“获取”HTTP,服务器将为我创建一个会话,它应该提供我所需的数据,但这件事情没有发生,每次我得到“403”禁止回应。 这是用于“GET”数据的代码。

  var uri = new Uri("https://xx-yyy.com/_ua/web/web/v1/xyz/?xyx=1431369000000&end=1431436740000&_=1431436741550");
            var Response = await httpClient.GetAsync(uri);
            var statusCode = Response.StatusCode;
            Response.EnsureSuccessStatusCode()
            var ResponseText = await Response.Content.ReadAsStringAsync();

我不知道什么是错的,我在做。 任何人都可以建议我如何做到这一点。

1 个答案:

答案 0 :(得分:0)

var handler = new HttpClientHandler();
var cookieContainer = handler.CookieContainer;
var client = new HttpClient(handler);

使用cookieContainer存储Cookie,并使用它们以与在网络上相同的方式验证未来的通话。

使用IsolatedStorageSettings

将Cookie存储到手机中

参考了解更多详情here