problem in making http.get() request in flutter
17,217
Solution 1
first import http as http
import 'package:http/http.dart' as http;
then parse your link to Uri using
var url = Uri.parse('https://www.googleapis.com/books/v1/volumes?q={http}');
http.Response response = await http.get(url);
try {
if (response.statusCode == 200) {
String data = response.body;
var decodedData = jsonDecode(data);
return decodedData;
} else {
return 'failed';
}
} catch (e) {
return 'failed';
}
Solution 2
Try this (Add http to pubspec.yaml under dependencies):
import 'package:http/http.dart' as http;
var response = http.get(Uri.parse('https://www.google.com'));
Solution 3
If still doesn't work try this:
import 'package:http/http.dart';
var response = get(Uri.parse('https://www.google.com'));
Solution 4
You passing string the error says need an uri so create an uri and use in it.
var uri = new Uri.http("example.org", "/path", { "q" : "{http}" });
Author by
Admin
Updated on June 04, 2022Comments
-
Admin over 1 year
i am learing about api's and http request in flutter and i am facing problem in making a get request as in any tutorial they are directly pasting string url inside get as parameter but when i post it as string it is showing error: The argument type 'String' can't be assigned to the parameter type 'Uri'.
can any one help me in this : this is my sample code :
import 'dart:convert' as convert; import 'package:http/http.dart' as http; void main(List<String> arguments) async { // This example uses the Google Books API to search for books about http. // https://developers.google.com/books/docs/overview var url = 'https://www.googleapis.com/books/v1/volumes?q={http}'; // Await the http get response, then decode the json-formatted response. var response = await http.get(url); // i am getting error here if (response.statusCode == 200) { var jsonResponse = convert.jsonDecode(response.body); var itemCount = jsonResponse['totalItems']; print('Number of books about http: $itemCount.'); } else { print('Request failed with status: ${response.statusCode}.'); } }
here is image of my code with error