首页 > 解决方案 > 传入参数删除 - 颤振

问题描述

我已经看到有关它的文档只显示了如何使用 url 删除,但它没有显示如何传递参数以仅删除 json 数组中的特定项目?

调用删除函数:

  main() {
    HttpClient httpClient = new HttpClient();
    httpClient.delete( '35.186.145.243', 8080, '/users');
    httpClient.close();
    return "Success";
  }

需要传入的参数有:

  1. 细绳user_id
  2. 细绳price

JSON数组:

{
    "user_id": "user2",
    "price": "$34"
}

标签: jsonflutterhttp-delete

解决方案


在 body 方法上使用 delete 时使用 HTTP 客户端请求找到答案!

main() async {
    String url = "http://35.186.145.243:8080/users";

    Map map = {
      'price': '$34',
      'user_id': 'user2'
    };

    print(await apiRequest(url, map));
  }

  Future<String> apiRequest(String url, Map jsonMap) async {
    HttpClient httpClient = new HttpClient();
    HttpClientRequest request = await httpClient.deleteUrl(Uri.parse(url));
    request.headers.set('content-type', 'application/json');
    request.add(utf8.encode(json.encode(jsonMap)));

    HttpClientResponse response = await request.close();
    String statusCode = response.statusCode.toString();
    String reply = await response.transform(utf8.decoder).join();
    responseMessage = statusCode;

    print(statusCode);

    httpClient.close();
    return reply;
  }

推荐阅读