当前位置: 首页 > 面试题库 >

是否允许实体正文进行HTTP DELETE请求?

彭梓
2023-03-14
问题内容

发出HTTP DELETE请求时,请求URI应该完全标识要删除的资源。但是,是否可以在请求的实体中添加额外的元数据?


问题答案:

612

该规范没有明确禁止或阻止它,因此我倾向于说它是允许的。

微软认为它以同样的方式(我可以听到观众低声),他们MSDN文章关于国有ADO.NET数据服务框架的删除方法

如果DELETE请求包含实体主体,则将忽略该主体[…]

另外,这是RFC2616(HTTP 1.1)关于请求必须说的内容:

仅当消息主体存在时,实体主体才存在(第7.2节)
通过包含或标头来表示消息正文的存在(第4.3节)Content-LengthTransfer-Encoding
一个消息体必须不被包括在所述请求的方法的规范不允许发送实体主体(第4.3节)
一个实体主体在TRACE明确禁止仅请求,所有其他请求类型不受限制(第9节和9.8特异性)
对于响应,已定义:


是否包含消息正文取决于请求方法和响应状态(第4.3节)
明确禁止在响应HEAD请求时使用消息正文(特别是第9和9.4节)
在1xx(信息性),204(无内容)和304(未修改)响应中明确禁止了消息正文(第4.3节)
所有其他响应都包括一个消息正文,尽管它的长度可能为零(第4.3节)



 类似资料:
  • 我在我的Web服务器(Debian/Nginx/Gunicorn)上运行Redis进行会话存储,我有理由相信我的Redis服务器遭到了黑客攻击。这绝对是可能的,因为如果我在另一台机器上针对web服务器运行命令“redis cli-h(HOST IP)”,我就可以进入控制台并运行命令。我有两个问题。首先,如果我在我的iptables文件中添加一个新的部分,如下所示,我会正确地阻止除Web服务器本身之

  • 问题内容: 我读过猫鼬每个集合最多只能打开一个连接,并且没有选择来更改它。 这是否意味着缓慢的mongo查询将使所有后续查询都等待? 我知道node.js中的所有内容都是非阻塞的,但是我想知道慢速查询是否会延迟所有后续查询的执行。以及是否有办法改变这一点。 问题答案: 如果使用mongoose.connect()的默认方法,则它仅使用一个连接。要解决此问题,您可以创建多个连接,然后将指向同一架构的

  • 问题内容: 我已经看完了这个演讲。 幻灯片编号:26引用 这些说法正确吗? 如果两个语句都正确,那么如何使代码可编译,以便jvm运行代码? 提前致谢。 问题答案: 这些说法是完全正确的。 请记住,Java是两件事- 一是语言,其二是虚拟机。尽管将语言限制为不允许基于类型的方法重载使Java成为一种更简单的语言,但JVM仍可以允许这样做以使其更强大。 作为一种语言,Java具有一种编译器,该编译器执

  • 请考虑以下简单代码: https://godbolt.org/z/i2kby7 您可以看到和都没有优化对的潜在调用。在我的理解中,这是正确的:抽象机器假设变量随时可能发生变化(例如,由于是硬件映射的),因此将初始化常数折叠为检查将是错误的。 > 这里讨论了消除对的读写操作:允许编译器优化本地volatile变量吗?(谢谢内森!)。我认为标准是非常清楚的,那些读写必须发生。但是这些讨论并不包括编译器

  • 问题内容: 是否有办法像在Java中那样在PHP中使用* .properties文件?我想在属性或XML文件中存储一些应用程序级常量,并在我的代码中轻松地调用它们。非常感谢您的指导。谢谢。 问题答案: PHP可以使用原生加载和解析文件。 您还可以使用来在包含文件中设置常量。 如果您设置了XML,请研究PHP的XML功能。最简单的解决方案可能是使用SimpleXML。

  • 问题内容: 我拼凑了一个图片网站。基本模式是非常简单的MySQL,但是在尝试表示与图像相关联的可能的管理标志(“不合适”,“受版权保护”等)时遇到了一些麻烦。我目前的概念如下: (为了方便阅读而被截断;我发誓要搭配各种外键和索引) 在标志类型的查找表上是外键,并且您可以想象 应该 在上外键。现在的问题是,当第一次发出标志时,没有逻辑解析类型(我将其声明为的一种很好的用法)。但是,如果设置了值,则应