gpt4 book ai didi

api - 如何在 Symfony 2 响应对象中返回 419 HTTP 状态

转载 作者:行者123 更新时间:2023-12-01 06:50:37 26 4
gpt4 key购买 nike

我目前正在 Symfony 2 中开发一个 HTTP API,我已经为它实现了 OAuth2 密码凭证进行身份验证。在身份验证时,客户端收到两个 token ,一个访问 token 和一个刷新 token 。

不知何故,我需要能够通知客户端访问 token 不再有效,并且必须使用刷新 token 来获取新的访问 token 。

我已经浏览了 HTTP 代码列表 [1],对我来说 419 身份验证超时状态似乎是最合适的。但是,当我在 Response 中使用它时对象我实际上收到了一个 500 状态:

return new Response("OK", 419);

结果:
$ curl -X GET http://local.api

< HTTP/1.1 500 Internal Server Error
< Date: Thu, 23 Jan 2014 21:34:39 GMT
* Server Apache/2.4.6 (Ubuntu) is not blacklisted
< Server: Apache/2.4.6 (Ubuntu)
< X-Powered-By: PHP/5.5.3-1ubuntu2.1
< Cache-Control: no-cache
< X-Debug-Token: b7c386
< X-Debug-Token-Link: /app_dev.php/_profiler/b7c386
< Transfer-Encoding: chunked
< Content-Type: text/html; charset=UTF-8

我的印象是 Response对象似乎不支持此代码(查看类中定义的常量列表),而是来自 Response类代码本身我无法检测到任何不允许我发送 419 的逻辑。

我目前正在使用 511 Network Authentication Required,但我更喜欢使用 419。我怎样才能做到这一点?

[1] http://en.wikipedia.org/wiki/List_of_HTTP_status_codes

最佳答案

Response constructor ,它抛出一个 InvalidArgumentException如果状态代码无效,则异常。您将需要使用不同的状态代码(查看 Symfony 中有效代码的类常量)

关于api - 如何在 Symfony 2 响应对象中返回 419 HTTP 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21320034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com