Requests: 新版本 2.10.0 中的关键字 headers 必须是字符串还是缓冲区?

创建于 2016-07-05  ·  7评论  ·  资料来源: psf/requests

关键字headers值必须是字符串还是缓冲区?
如果关键字dntupgrade-insecure-requests值是stringbuffer是对的,但是值是 int 就错了。这是为什么呢?
对:

   'dnt': '1',
    'upgrade-insecure-requests': '1',

错误的:

   'dnt': 1,
    'upgrade-insecure-requests': 1,

为什么?

最有用的评论

不管我们记录了什么,这曾经奏效,现在不行。 如果我们不改回去,我们会破坏很多代码。

所有7条评论

@wut0n9此行为更改不在 v2.10.0 中,而是在当前的 master 分支中。

然而,这是一个真正的错误:#3366 已经倒退了这一点。 @nateprewitt ,您是否有兴趣尝试更新此修复程序?

标题应该始终是字符串。 我不认为这是一个重大的回归,如果是回归的话。 我们一直记录标题值应该是字符串。

不管我们记录了什么,这曾经奏效,现在不行。 如果我们不改回去,我们会破坏很多代码。

是的,我会正确处理这个@Lukasa。

另见https://github.com/kennethreitz/requests/issues/865https://github.com/kennethreitz/requests/pull/866

我不知道在这种情况下实际上有多少“很多”。

@sigmavirus24已链接到相关的早期意见,这表明实际上我们不允许非字符串标头值。 所以这意味着这不是错误:是我们在 API 定义范围内进行了修订。

@Lukasa是的,坦率地说,我很惊讶这没有提前中断。 就我而言,非字节/字符串作为标头值的含义是未定义的。

此页面是否有帮助?
0 / 5 - 0 等级