- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
HTTP 错误具有与其数字代码关联的标准化响应字符串。例如。 404“未找到”或 500“内部服务器错误”。从 RFC 可以清楚地看出,这些字符串与错误的识别无关(只有数字代码是),但摆弄例如tornado 很明显,原因是根据错误代码自动生成的,并且 HTTPError 类中的 reason 参数存在(根据文档)使用非标准代码,这意味着您通常不应该使用它。
我的问题是:将原因字符串更改为对实际错误更具体的内容是否是一种好习惯,例如“500 无法连接到后端数据库”或“500 硬盘着火”,或者是否不鼓励这种做法,错误应保持为“500 内部服务器错误”并且负载中应包含任何其他信息?
最佳答案
根据RFC 7230 ,HTTP/1.1 中消息语法和路由的当前引用,存在原因短语的唯一目的是提供与数字状态代码关联的文本描述,客户端应忽略该原因短语内容。 RFC 还声明原因短语可以为空。
请参阅下面的引用:
The first line of a response message is the status-line, consistingof the protocol version, a space (
SP
), the status code, anotherspace, a possibly empty textual phrase describing the status code,and ending withCRLF
.status-line = HTTP-version SP status-code SP reason-phrase CRLF
[...]
The reason-phrase element exists for the sole purpose of providing atextual description associated with the numeric status code, mostlyout of deference to earlier Internet application protocols that weremore frequently used with interactive text clients. A client SHOULDignore the reason-phrase content.
reason-phrase = *( HTAB / SP / VCHAR / obs-text )
引用RFC 7231 , HTTP/1.1 协议(protocol)的语义和内容的当前引用:
[...] The reason phrases listed here are only recommendations --they can be replaced by local equivalents without affecting the protocol. [...]
理论上,没有什么可以阻止您更改原因短语。
然而,existing reason phrases确实广为人知并被广泛采用。假设客户应该忽略原因短语,我会说发送错误消息的地方不正确。考虑为其使用响应负载。
HTTP/2 根本不支持原因短语。请参阅 RFC 7540 中的以下引述:
For HTTP/2 responses, a single
:status
pseudo-header field isdefined that carries the HTTP status code field.This pseudo-header field MUST be included in allresponses; otherwise, the response is malformed.HTTP/2 does not define a way to carry the version or reason phrasethat is included in an HTTP/1.1 status line.
关于http - 修改 HTTP 响应的原因短语是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38654336/
我们正在使用一个脚本,它会返回以下内容120007CONSULTA DE DEUDA CORRECTA.01TEST我正在尝试从awk中获得 CONSULTA DE DEUDA CORRECTA 的短
我正在使用以下查询: { "_source": [ "title", "bench", "id_", "court",
例如,我有数十亿个短语,我想要将相似的短语聚集在一起。 > strings.to.cluster <- c("Best Toyota dealer in bay area. Drive out wit
我有一个包含大约 1000 个关键字/短语(一到四个字长)的数据库表 - 这个表很少更改,所以我可以将数据提取到更有用的东西中(比如正则表达式?) - 所以这没有找到/基于自然语言处理猜测关键词..
我想确保我从一开始就做对了,但我找不到好的答案,所以我想问一下。 我要做的是以下内容。 以一句话为例:The quick brown fox jumped over the lazy dog"并使用全
我有一个表单,其中有两个单选按钮。 应该从字符串中搜索整个字符串,第二个应该搜索至少一个单词。 例如: 我将搜索“Awesome ideas for startup”。 如果我选中“搜索整个字符串/短
我有... 一组固定关键字和词组(大约 1,000,000 个),例如 birthday、happy new year、vacation等 10 到 500 字之间的一些可变文本。 我想…… 识别文本
有没有办法删除字符串中重复的和连续的单词/短语?例如。 [in]: foo foo bar bar foo bar [out]: foo bar foo bar 我试过这个: >>> s = 'thi
我正在寻找一种在文本中搜索短语或惯用表达的方法,无论时态或可能的介词/副词如何,例如如果我正在寻找 call off我还想找到 My boss called the meeting off. 之类的用
PowerShell 有一些语法特性,我找不到太多相关文档。今天我的问题是 ? {...} 例子 PS> Get-SPServiceInstance | ? {$_.GetType.toString(
我通过 PHP 使用 Solr 来搜索我网站的各个方面。我正在尝试实现一项功能,但找不到任何有关如何实现它的信息。 我有一组文档(评论),每个文档都与特定产品有关。 我想找到出现在单个产品的多条评论中
我正在从事自然语言生成任务,需要检索与 Cyc 术语等效的自然语言单词或短语。例如。 “#$EatingEvent”->“吃”或“#$Coyote-Animal”->“土狼”。 如何通过 Java A
我在使用 Java 中的以下正则表达式时遇到问题。我删除了双引号,以使其更具可读性。由于缺乏更好的词,我还将每个“组件”放在单独的行上(但实际的表达式会将行合并,行之间没有空格): (?:\bIN(?
我有一个 MySQL 数据库,我正在尝试使用 PHP 获取趋势主题(流行短语或单词)。我尝试了一些查询,但似乎没有什么对我有用。 最佳答案 您可以尝试创建一个包含两列的新表:WORD 和 COUNT,
我在 MySql 中有一个包含城市的表。 |---------------------|------------------| | ID | City
我正在处理搜索页面上的用户输入。如果用户选择“所有单词”类型的搜索,那么我会从搜索文本中删除所有 bool 搜索运算符,并在每个真实单词之间添加 ' AND '。在大多数情况下非常简单。但是,我不知道
我使用的语音识别软件给出的结果不是最佳的。 例如:session 返回为 fashion 或 mission。 现在我有一本像这样的字典: matches = { 'session': ['fas
我厌倦了使用 Gimp 无休止地滚动所有字体来不规律地搜索完美字体,所以我想:“为什么不为每种字体构建一个可视的 pangrams 列表”。 因此,我尝试构建一个 php 脚本,该脚本在 .fonts
如何编写一个 RegEx 模式来测试一个字符串是否包含多个具有以下结构的子字符串: "cake.xxx" xxx 是任何东西,但不是“奶酪”、“牛奶”或“黄油”。 例如: “我有一个 cake.hon
我有一个字段“部门”,它是一个列表:{“部门”:[“餐饮服务”,“软件开发”,“制造”,“部署”]}' 我想聚合“部门”中以“d”开头的元素。即,从所有记录进行部署。 我能够找到包含一个前缀为“d”但
我是一名优秀的程序员,十分优秀!