使用 HTTP Vary 标头来决定处理请求的策略

发布于 2024-08-27 10:10:24 字数 271 浏览 3 评论 0原文

我有一个特定的 REST 端点,可以在论坛中创建主题;但我想在处理请求时应用不同的策略。例如,如果客户 A 拨打电话,请进行审核。如果客户 B 拨打电话,请执行其他操作。最简单的方法是添加一个查询参数以进行区分:

 POST /resource?from=xyz

另一个绝妙的想法是使用 Vary HTTP 标头。

 POST /resource
 Vary: xyz

这种方法有什么问题吗?

I have a specific REST endpoint that creates a topic in a forum; but I want to apply different strategies when processing the request. e.g. If client A makes the call, perform moderation. if client B makes the call, do something else. The easiest would be to add a query param for differentiation:

 POST /resource?from=xyz

Another brilliant idea is to use the Vary HTTP header.

 POST /resource
 Vary: xyz

Any problems with this approach ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

自由如风 2024-09-03 10:10:24

好吧,首先,“Vary”是一个响应标头,所以这不是那么出色:-)

Well, for one, "Vary" is a response header, so this is not so brilliant :-)

凹づ凸ル 2024-09-03 10:10:24

如果这是出于安全原因,那么这是非常糟糕的安全性。相反,使用标准 HTTP 身份验证(或您的自定义身份验证方案)将凭据传递到后端,并且只有那里根据凭证/角色执行所需的任何审核/审核。

If this is for security reasons, this is very bad security. Rather, use standard HTTP authentication (or your custom authentication scheme) to pass credentials to the backend, and only there, based on credential/roles do whatever moderation/audit is required.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文