我试图用body发送一个DELETE请求,但是http.delete不支持向请求中添加body。
我在网上找到了这个解决方案,但我想返回Response而不是StreamedResponse。我怎样才能做到这一点呢?
static Future<http.Response> deleteFavorites({Map<String, int> body}) async {
UserRepository userRepository = UserRepository();
String token = await userRepository.storage.read(key: 'token');
final client = http.Client();
var response;
try {
response =
await client.send(http.Request("DELETE", Uri.parse(favoritesUrl))
..headers["access-token"] = token
..body = jsonEncode(body));
//
} finally {
client.close();
}
return response;
}发布于 2019-07-04 22:01:54
您可以在响应类fromStream中使用静态方法,它接受StreamedResponse并返回您想要的未来,只需将返回值更改为:
return Response.fromStream(response);您可以查看文档的https://pub.dev/documentation/http/latest/http/Response-class.html。
希望它能帮上忙!
https://stackoverflow.com/questions/56889334
复制相似问题