Вызов Xamarin WebAPI не выполняется - исключение не возникло - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть следующий метод в Xamarin, который выполняет вызов API, который возвращает список элементов. Когда я запускаю Visual Studio и запускаю, она возвращает строку JSON с информацией, которую я ожидаю. Однако, когда я запускаю его несколько раз, и чаще всего он попадает в строку, возвращаемую Json = await client.GetStringAsyn c, то строка просто выходит из метода, ничего не возвращая.

Я не думаю, что это связано с перезапуском Visual Studio, потому что иногда после того, как он не работает несколько раз, он снова будет работать, а затем снова остановится.

public async Task<IEnumerable<ItemModel>> GetItemsAsync(bool forceRefresh = false)
    {
        var baseAddr = new Uri("https://www.domain.co.uk");

        var client = new HttpClient
        {
            BaseAddress = baseAddr
        };

        client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", Settings.ApiToken);

        // NOW PROTECTED
        try
        {
            string returnedJson = await client.GetStringAsync("/api/Items/Index");

            var convert = JsonConvert.DeserializeObject<List<ItemModel>>(returnedJson);

            return convert;
        }
        catch (Exception ex)
        {
            return null;
        }

        return null;

    }

Метод WebAPI -

 [Authorize]
    [HttpGet("[action]")]
    public async Task<List<ItemModel>> Index()
    {
        return await itemService.Get();
    }
...