我如何在 flutter http 中使用带有变量的 get 方法?

时间:2021-05-17 17:47:10

标签: api flutter http flutter-http

Error Image Here

我想调用 API,但我不能提供纬度和经度作为变量。

3 个答案:

答案 0 :(得分:0)

基本上你想在 getData 方法中定义你的 uri。 例子:

getData({String latitude,String longitude})async{
..define uri. var url =Uri.https..
http.Response..

答案 1 :(得分:0)

正如格里芬所说在 getData 函数中写入 url,所以这样做,并在该函数中提取并传递这样的查询参数

void getData(double latitude,double longitude) async {
    Map<String, dynamic> param = {
          'longitude': longitude,
          'latitude': latitude,
        };

    var url = Uri.https('api/openweathermap.org',
        '/data/2.5/weather',
        param);
    
    }

答案 2 :(得分:0)

创建一个函数而不是变量

Uri url(double latitude, double longitude) {
    return Uri.https('api.abc.org', 'data/123/abc', {
      'lat': latitude,
      'lon': longitude,
    });
  }

Future<void> getData(double latitude, double longitude) async {
  final response = await http.get(url(latitude, longitude));
}