【问题标题】:How to extract header values from http response?如何从http响应中提取标头值?
【发布时间】:2021-06-10 14:19:58
【问题描述】:

我正在使用 http post 发送一些信息并取回响应。

final response = await http.post(
                      Uri.parse(
                        "some url"
                      ),
                      headers: <String, String>{
                        'email': email,
                        'callbacktoken': callbacktoken
                      },
                    );

当我运行它时,当来自后端的响应具有标头值时,我的执行会卡在此代码块(我尝试在下一行中放置一个打印语句),但是如果我从后端发送没有标头的响应(我在后端使用 django)然后我的程序运行没有问题。

所以我的问题是如何处理带有标题的响应以及如何提取它们?

【问题讨论】:

  • “如果我发送响应” - 你的意思是“发送请求”?如果是这样,您需要发送带有一些自定义标头的请求,然后从响应中读取headers
  • @pskink 不,我的意思是当我的 django 后端发送带有标头值的响应时
  • network view 显示什么?
  • @pskink 状态为空白,持续时间在请求后 2 分钟仍处于等待状态
  • 你能把&lt;String,String&gt;改成Map&lt;String,String&gt;吗?当我不强制使用类型时,我已经遇到了一些问题......你可以给它一个机会!

标签: flutter flutter-http


【解决方案1】:

经过一番研究,我终于找到了问题所在。我的自定义标题名称中有空格“新用户”,因为 http 无法解析它。将名称更改为“newuser”后一切正常。

【讨论】: