首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用颤振中的表单数据制作http post

如何使用颤振中的表单数据制作http post
EN

Stack Overflow用户
提问于 2022-10-19 04:23:56
回答 2查看 37关注 0票数 1

我正在尝试做一个http post请求,我需要将主体指定为表单数据,因为服务器不将请求视为原始请求或params。

这是我试过的代码

代码语言:javascript
代码运行次数:0
运行
复制
** Future getApiResponse(url) async {
    try {
      // fetching data from the url
      final response = await http.get(Uri.parse(url));
      // checking status codes.
      if (response.statusCode == 200 || response.statusCode == 201) {
        responseJson = jsonDecode(response.body);
        // log('$responseJson');
      }
      // debugPrint(response.body.toString());
    } on SocketException {
      throw FetchDataException(message: 'No internet connection');
    }
    return responseJson;
  }
}

但这不管用。这是邮递员的要求

在这里输入图像描述

它不适用于帕姆斯。只在身体里。这是因为我想这是表格数据。如何使用HTTP在颤振中调用表单数据?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-10-19 04:51:13

对于HTTP,您可以尝试这样做

代码语言:javascript
代码运行次数:0
运行
复制
final uri = 'yourURL';
var map = new Map<String, dynamic>();
map['device-type'] = 'Android';
map['username'] = 'John';
map['password'] = '123456';

http.Response response = await http.post(
    uri,
    body: map,
);

我已经使用dio:^4.0.6创建了FormData和API调用。

代码语言:javascript
代码运行次数:0
运行
复制
//Create Formdata
formData = FormData.fromMap({
             "username" : "John",
             "password" : "123456", 
             "device-type" : "Android"
        });
   
//API Call
final response = await (_dio.post(
        yourURL,
        data: formData,
        cancelToken: cancelToken ?? _cancelToken,
        options: options,
      ))
票数 0
EN

Stack Overflow用户

发布于 2022-10-19 04:52:30

首先,您不能通过GET请求发送请求体(您必须使用POST/PUT等)。您可以将Map用于请求体作为form data,因为http包中的http只有3种类型:String, List or Map。就像这样:

代码语言:javascript
代码运行次数:0
运行
复制
var formDataMap = Map<String, dynamic>();
formDataMap['username'] = 'username';
formDataMap['password'] = 'password';

final response = await http.post(
    Uri.parse('http/url/of/your/api'),
    body: formDataMap,
);

log(response.body);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74119844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档