【问题标题】:http.get() does not add my parameters in headershttp.get() 没有在标题中添加我的参数
【发布时间】:2019-04-05 10:27:22
【问题描述】:

我正在尝试使用 Flutter 访问 API,但一直遇到问题。我向http.get(headers: myParameters) 添加了一个地图,但服务器仍然没有处理我的请求,所以我打印了我的.headers,我添加的地图不是标题的一部分

    var params = {"key": "apiKey"};
    Uri uri = Uri.parse("https://api.testapp.com/v1");
    var response = await http.get(uri, headers: params); 
    print(response.headers);

打印出来后,我得到了一个json映射,但是我的参数没有列出来,是不是在发送请求时没有添加它们?

{via: 1.1 vegur, content-type: application/json, connection: keep-alive, date: Fri, 05 Apr 2019 10:14:49 GMT, content-length: 92, server: gunicorn/19.9.0}

【问题讨论】:

  • response.request.headers吗?请打印此内容。您正在打印从服务器获得的响应的标头,而不是您发送的请求的标头。
  • 您确定密钥是作为 HTTP 标头而不是在 URL 查询字符串或 POST 表单或正文中发送的吗?

标签: dart flutter http-get url-parameters


【解决方案1】:

你需要使用HttpHeaders:

var params = {HttpHeaders.authorizationHeader: "Basic your_api_token_here"};
Uri uri = Uri.parse("https://api.testapp.com/v1");
var response = await http.get(uri, headers: params); 
print(response.headers);

【讨论】:

    猜你喜欢
    • 2021-11-11
    • 2017-08-03
    • 2017-08-11
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 2019-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多