【Flutter】http.get()で情報取得できないときの対処法
こんにちは。
1年前くらいにFlutterを勉強しはじめたものの途中で投げ出し、最近再度万協し始めている、さくです。
http.get()に対して普通にURLを引数に与えて実行したら怒られたので対処法メモ。
しらないうちにFlutter2がリリースされているようで、それが原因のトラブル?のような気がします。
以下のようなコードを実行しました。
Future<void> load() async {
final response = await http.get('http://xxxxxx....');
:
:
:
);
実行すると、こんなこと言われます。
Error: The argument type 'String' can't be assigned to the parameter type 'Uri'.
- 'Uri' is from 'dart:core'.
http.get()はStringを受け付けていないのでUriを引数に与えてくださいとのこと。
GETしたいURLをUri.parse()してあげましょう。
Future<void> load() async {
final res = await http.get(Uri.parse('http://xxxxxx....'));
:
:
:
);
これで実行できました。
昔は修正前のコードで通っていたような...?Flutter2の仕様変更でしょうか。
エラー検索したところ、日本語Webサイトがヒットしなかった気がしたので一応記事にしてみました。
自分と同じようなFlutter初学者に知識共有できれば幸いです。一緒に頑張りましょう。
おわり。
この記事が気に入ったらサポートをしてみませんか?