Веб-приложение Flutter зависает при запросе http get - PullRequest
1 голос
/ 01 апреля 2020

Я хотел бы получить информацию из API, используя HTTP-запрос GET, к конечной точке publi c, которая возвращает XML в Flutter (web).

Однако, когда я запускаю код в режиме отладки и попадаю на экран, где выполняется HTTP-запрос API, приложение зависает.

Я написал следующий код:

import 'dart:async';

import 'package:http/http.dart' as http;
import 'package:xml/xml.dart' as xml;

class SearchApi {

Future fetchPhotos(String query) async {
  final http.Response response = await http.get('https://www.gahetna.nl/beeldbank-api/opensearch/?searchTerms=auto&startIndex=1&count=10', headers: {"Accept": "application/xml"});

  print(response.body);

  if (response.statusCode == 200) {
    // If the server did return a 200 OK response,
    // then parse the XML.
    print(xml.parse(response.body));

    return xml.parse(response.body);
  } else {
    // If the server did not return a 200 OK response,
    // then throw an exception.
    throw Exception('Failed to load photos');
  }
}

Код работает, когда я меняю http.get url, например, на https://jsonplaceholder.typicode.com/todos/1. Запрос http get работает с конечной точкой 'https://www.gahetna.nl/beeldbank-api/opensearch/', когда я использую curl в командной строке.

В коде Visual Studio нет сообщений об ошибках IDE, когда экран зависает.

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