如何将函数中的参数用于带有 Dio 包的 http 请求正文

Posted

技术标签:

【中文标题】如何将函数中的参数用于带有 Dio 包的 http 请求正文【英文标题】:How to use the argument from function for body of http request with Dio package 【发布时间】:2021-11-16 09:33:55 【问题描述】:
Future<void> login(String email, String password) async 
    String url = "https://phone-book-api.herokuapp.com/api/v1/signin";
    Response response;
    var dio = Dio();
    response = await dio.post(url,
        data: "email": email, "password": password);
    print(response.data);
  

如果我用上面的代码创建函数我得到了一些错误,但是如果我用硬代码填充主体,它不会发生错误,并且我可以在代码示例下方收到响应

Future<void> login(String email, String password) async 
    String url = "https://phone-book-api.herokuapp.com/api/v1/signin";
    Response response;
    var dio = Dio();
    response = await dio.post(url,
        data: "email": "l200140004@gmail.com", "password": "l200140004");
    print(response.data);
  

任何人都可以帮助我并向我解释这个案例,请...

【问题讨论】:

我希望您提供的硬编码电子邮件和密码只是一个示例,而不是您的实际登录信息。但是对于这个问题,第一个函数的参数是如何填充的,你看到了什么错误? [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] 未处理异常:DioError [DioErrorType.response]: Http 状态错误 [400] 在这个函数中,我想用Dio发布请求,body的值来自函数的参数/agument 上面的代码只是我的问题的例子 【参考方案1】:

对不起大家,我的密码输入错误,所以可能是错误

【讨论】:

这并没有提供问题的答案,这将更适合作为评论。一旦你有足够的reputation,你就可以comment on any post。

以上是关于如何将函数中的参数用于带有 Dio 包的 http 请求正文的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Dio 或 http 在 Flutter 中通过 GET 请求发送参数

Dio(Dart 的 Http 客户端)获取请求不适用于拦截器

颤振 | Dio Package ...在后台下载大文件

Flutter dio不适用于flutter web中的post请求

flutter中的dio包如何在这段代码中加入base-url和url和apikey

如何将向量中的值传递给带有多个参数的函数