如何解决在flutter http.get GET请求中将参数作为Map传递
有什么方法可以方便地将两个参数/查询作为 Map
var headers={
'accept': 'application/json','Accept-Language': 'en_US','user-agent': 'Mozilla/5....'
};
final response = await http.get(Uri.parse(url+'?district_id=$district_id'+'&date=$date'),headers:headers);
http.get 只接受 url 和 headers,不像在 python get 中有效载荷字典可以用作参数。 我想简单地实现它,例如:
final response = await http.get(Uri.parse(url),params:params,headers:headers);
或任何其他没有字符串操作的方法。
更新:
我尝试使用 Uri
构造函数。但它抛出错误。我需要通过的地图是
{'district_id':298,'date':'10-06-2021'}; \\has int and String as values.
错误:
“int”类型不是“Iterable”类型的子类型
到目前为止,我只能通过将 int 298 更改为 String '298' 来使其工作。
解决方法
您可以使用 dio.request
,它接受一个名为 Map<String,dynamic>
的 queryParameters
对象。
dio.request(path,options: Options(method: 'GET',headers: headers),queryParameters: {'district_id': districtId},)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。