在Flutter应用中获取http获取请求的URL

时间:2019-02-22 16:48:01

标签: http url dart get flutter

我正在尝试获取以下get请求的URL;

String url = ['url_here'];
Future<Post> fetchPost() async {
final response = await http.get(url);

if (response.statusCode == 200) {
return Post.fromJson(json.decode(response.body));
} else {
throw Exception('Failed to load post');
}
}

我得到的状态码为200。

有什么想法吗?

为澄清起见,当您在浏览器中输入网址时,它将带我到一个带有其中包含代码的网址的页面。我正在尝试提取该代码。

1 个答案:

答案 0 :(得分:1)

followRedirects默认为true,但我还没有找到一种方法来获取重定向到该方法的URL。

设置followRedirects = false将在location标头中返回新地址。

  final url = 'http://wikipedia.net';
  final client = http.Client();
  final request = new http.Request('GET', Uri.parse(url))
    ..followRedirects = false;
  final response = await client.send(request);

  print(response.headers['location']);
  print(response.statusCode);

如果要获取重定向地址的内容,则可以使用来自location的URL或仅使用默认的(followRedirects = true)发送新请求