说我有一个计算阶乘的服务器:
> GET localhost:8080/factorial/10
200 3628800
在我的分析中,我有99%的用户要求在计算上计算便宜的阶乘,但是我的大部分CPU时间都花在了想要了解factorial(100+)
的用户中。这一点
现在,我知道如何计算factorial(100)
,我只是不想,所以我不会满足这些要求。我应该用什么HTTP代码响应?
注意:factorial
只是一个示例-实际上,我没有硬性方法可以提前确定哪个请求太昂贵而哪个请求不会太费力,我必须决定一个案例根据每个请求的情况而定,有些请求将返回HTTP 200及其结果,而其他请求将被拒绝。
答案 0 :(得分:1)
在我看来,如果您的服务器不希望响应这样的请求,而 not 则不是客户端的错误,那么5xx错误可能有意义吗?也许501 based on wikipedia's definition有意义吗?
我将返回500,并显示一条错误消息,以指示服务器打算不明确响应此类请求,但这就是我。