相关疑难解决方法(0)

我应该为HTTP标头使用什么字符编码?

我正在使用一个"有趣"的HTML特殊字符(✰)(请参阅http://html5boilerplate.com/获取更多信息)获取ServerHTTP标头,并且我想知道它是否符合每个规范.

  • 在Windows Xp Pro SP 3上使用Chrome中的开发工具中的网络选项卡,我看到✰很好.

  • 在IE8中,✰ 正确呈现.

  • w3.org HTML验证器无法正确呈现它(显示" â°"代替).

现在,我不太热衷于角色编码......坦率地说,我并不太关心它们; 我只是盲目地使用UTF-8 cus我被告知.:-)


是不是由不同的解析器/浏览/引擎/中的错误引起的差异(无论他们被称为什么)?

是否有针对此标准或可能是HTTP标头"值"的允许字符列表?

http-headers

114
推荐指数
2
解决办法
8万
查看次数

为什么要对Authorization标头进行base64编码?

Twitter的API要求发送Authorization标头,该标头是与API密钥连接的API密钥的base64编码.在Node中,我使用:

var base64 = new Buffer(apiKey + ':' + apiSecret).toString('base64');
Run Code Online (Sandbox Code Playgroud)

发送的标头变为:

Authorization: 'Basic ' + base64
Run Code Online (Sandbox Code Playgroud)

base64编码字符串"apiKeyHere:apiSecretHere"有什么意义?为什么不接受包含原始api凭证的Authorization标头?

这个问题类似于base 64编码的目的是什么以及它在HTTP基本身份验证中使用的原因?但投票的答案并没有完全回答我的问题.Twitter的api密钥和api密钥已经是HTTP兼容的字符.他们看起来像这样(这些不是真的):

消费者密钥(API密钥)8dme3utVQfOhlPk5BUG9XbFxR

消费者秘密(API Secret)QFZXoC7MP72JZtGMBNpjLGI4Vl1xr1q9dyPLp3u7jGtkESpbLm

那么为什么base64会编码呢?此外,该帖子指出"编码的目的是将可能在用户名或密码中的非HTTP兼容字符编码为与HTTP兼容的字符." 用户名和密码不是HTTP兼容字符吗?

base64 oauth oauth-2.0 twitter-oauth bearer-token

7
推荐指数
2
解决办法
1万
查看次数

HTTP 标头的字段值中可以包含冒号吗?

我最近一直在处理 HTTP 标头。我正在根据 RFC 规定的冒号分隔从 HTTP 标头请求中解析字段和值。在蟒蛇中:

header_request_line.split(":")
Run Code Online (Sandbox Code Playgroud)

但是,如果值字段中允许使用冒号,则会出现问题。考虑:

User-Agent: Mozilla:4.0
Run Code Online (Sandbox Code Playgroud)

这将被分成 3 个字符串,而不是我想要的 2 个。

http rfc http-headers

5
推荐指数
1
解决办法
5785
查看次数