Создайте HttpClient в Xamarin Forms в iOS - PullRequest
0 голосов
/ 27 января 2020

У меня есть ASP. Net Core API, который работает.

У меня есть решение Xamarin Forms и в основном проекте, и у меня есть этот класс:

public class GetSettings
{

    public static async Task<SettingResponse> GetSetting()
    {
        SettingResponse setting = new SettingResponse();

        var url = new Uri(string.Format(GetUrl.GenerateURL("GetSetting"), string.Empty));

        var client = new HttpClient();

        var response = await client.GetAsync(url);

        if (response.IsSuccessStatusCode)
        {
            var result = response.Content.ReadAsStringAsync().Result;

            setting = JsonConvert.DeserializeObject<SettingResponse>(result);
        }
        else
        {
            setting = null;
        }

        return setting;
    }
}

В проекте Android и iOS у меня есть две строки:

SettingResponse setting = new SettingResponse();

setting = await GetSettings.GetSetting();

В проекте Android нет проблем, и он работает нормально, но в проекте iOS при получении на new HttpClient(); ничего не происходит и приложение ничего не делает.

1 Ответ

0 голосов
/ 27 января 2020

Проверьте, есть ли у вас ключ NSAllowsArbitraryLoads для YES в словаре NSAppTransportSecurity в вашем файле info.plist.

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...