【问题标题】:Xamarin.Forms make Http POST request using a webviewXamarin.Forms 使用 webview 发出 Http POST 请求
【发布时间】:2018-11-14 10:38:01
【问题描述】:

我是 Xamarin 的新手,目前正在实现一个 Xamarin.Forms 应用程序,它有一个基于 XAML 的登录页面,其中包含用户名/密码字段和一个提交按钮。

一旦用户输入凭据并点击提交,我需要向服务器发出请求,为经过验证的用户生成 JWT 令牌(我正在使用 HttpClient 获取)。

然后这个令牌应该通过表单数据发送到网页,响应页面应该加载到 WebView 中。

这在 Xamarin.forms 中是否可行?如果是的话怎么做?

【问题讨论】:

  • 您的问题解决了吗?
  • 是的卢卡斯,在我的场景中,网页返回 302(重定向)状态。因此,我必须使用 HttpWebRequest 通过禁用 AllowAutoRedirect 来发出 POST 请求。

标签: webview xamarin.forms


【解决方案1】:

这在 Xamarin.forms 中可行吗?

是的,你可以使用 HttpClient

HttpClient client = new HttpClient() { Timeout = TimeSpan.FromSeconds(30) };

HttpContent content = new StringContent(JsonConvert.SerializeObject(objectToPost), Encoding.UTF8, "application/x-www-form-urlencoded");

var response = await client.PostAsync(new Uri("http://your.url"), content);

if (response.IsSuccessStatusCode) {
    var responseFromServer = await response.Content.ReadAsStringAsync();
}
else {
    // handle errors
}

【讨论】:

    猜你喜欢
    • 2011-04-10
    • 2017-11-28
    • 1970-01-01
    • 2020-03-10
    • 2016-03-15
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    相关资源
    最近更新 更多