我在做xamarin表格。我正在消费API的地方。当我在android 5中运行该应用程序时,它工作正常,但如果运行7+,则会给出如下错误
无法解析主机"almsdev.southeastasia.cloudapp.azure.com":没有与主机名关联的地址。
如何解决这个问题?
下面是代码片段:
public async Task<HttpResponseMessage> Login(string EmailOrMobile)
{
try
{
var responseTask = await client.GetAsync(OauthBaseUrl + "OAuthSAAS/MSLogin?UserCredentials=" + EmailOrMobile);
return responseTask;
}
catch (Exception ex)
{
Crashes.TrackError(ex);
return null;
}
}单击按钮,我正在调用上面的方法
private async void fn_Submit_Clicked(object sender, EventArgs e)
{
var response = await _oauthService.Login(txt_credentails.Text.Trim());
}我的基本网址是
http://almsdev.southeastasia.cloudapp.azure.com:81/api/
我使用的是Http client =新的Http();
发布于 2019-06-13 10:52:34
由于您的目标是Android9.0(API级别28),默认情况下,明文(非HTTPS)支持是禁用的。要克服这个问题,您可以:要么使用HTTPS,要么添加信任以允许http通信。
首先,在Android中创建一个文件夹: xml并添加文件network_security_config
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">almsdev.southeastasia.cloudapp.azure.com</domain>
</domain-config>
</network-security-config>然后,在你的Manifest.xml
<application android:label="YourAppName" android:networkSecurityConfig="@xml/network_security_config">您可以在Xamarin博客文章中阅读更多内容。
发布于 2019-06-13 10:54:07
尝试将登录凭据添加到头Http客户端。
https://stackoverflow.com/questions/56578067
复制相似问题