【发布时间】:2020-02-13 05:34:35
【问题描述】:
我正在尝试通过客户端提供给我的 API 读取 json 文件,但它给出了 HTTP 错误 405 说方法不允许。谁能告诉我做错了什么?
这个 api 请求 sn-p 给了我:
curl 'http://finelistings.com/backend/apis/webbrands/' -H 'Content-Type: application/json' -H 'Accept: application/json' --data-binary '{}' --compressed --insecure
Future<String> getData() async {
var response = await http.get(
Uri.encodeFull("http://finelistings.com/backend/apis/webbrands/"),
headers: {
"Accept": "application/json",
}
);
Map<String, String> data = jsonDecode(response.body);
print(data);
}
【问题讨论】:
-
Curl 调用是否正常工作?
-
有一个 great resource 可以将 curl 命令转换为 dart。正如@Torkel 所注意到的,您需要作为 POST 提交。您错过了 curl 命令的部分内容,即
--data-binary...,该部分 向服务器发送正文,该请求必须通过 POST 完成。
标签: json api http flutter dart