我刚刚完成了一个 BrainBench 测试,我一生都无法弄清楚这个问题的答案……我认为没有正确的答案。
需要使用选项 1 PUT 请求;它们是不可重复的。
选择 2 需要使用 HEAD 请求;它们减少了数据流量。
选择 3 需要使用 GET 请求;它们更容易发送给其他用户。
选择 4 需要使用 POST 请求,因为 GET 请求可能会被搜索引擎无意中发送
选择 5 需要使用 DELETE 请求;它们是为此用途而设计的。
我刚刚完成了一个 BrainBench 测试,我一生都无法弄清楚这个问题的答案……我认为没有正确的答案。
需要使用选项 1 PUT 请求;它们是不可重复的。
选择 2 需要使用 HEAD 请求;它们减少了数据流量。
选择 3 需要使用 GET 请求;它们更容易发送给其他用户。
选择 4 需要使用 POST 请求,因为 GET 请求可能会被搜索引擎无意中发送
选择 5 需要使用 DELETE 请求;它们是为此用途而设计的。
我对此并不积极,但我很确定它的选择 4。
假设您有一个指向 /Delete.aspx?id=4 的链接,而 Google 决定抓取该链接。假设没有授权检查,Google 可以清除您的记录。
编辑:这是关于为什么使用 POST 而不是 GET来更改数据的操作的 SO 讨论。
PUT、POST 和 DELETE 都可以使用。DELETE 删除属于“更改”的数据。PUT 替换。POST 可以做任何事情。
恕我直言,这个问题措辞不好,但由于答案 1 和 5 包含错误信息,因此 4 可能应该是正确答案。
如果 PUT 替换内容,那么它是幂等的,因此是可重复的,因此 1 是错误的,如果无缘无故地放在句子的后半部分。在这种情况下,HEAD 将是荒谬的,所以它已经出来了。由于上述原因(爬虫攻击内容等),GET 很糟糕 - GET 意味着 GET。这并不意味着 GET(哦,有一些副作用) POST 是正确的答案。DELETE 用于...删除资源。这不是你想要的。