问题标签 [http-response-codes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
421 浏览

asp.net-mvc - 如何在 ASP.NET 中发送回我自己的 404 错误消息,但作为 json?

我正在尝试使用 as 发回一个简单的错误Json消息HTTP codeas 404

所以我开始编写自己的IExceptionFilter检查以查看异常。为了简单起见,如果异常抛出是类型,ResourceNotFoundException那么我将代码设置为404. 否则一切 if 500

现在,问题是..返回默认的IIS7 404错误消息:(我的代码被称为..但它似乎绕过了它(稍后在管道中)......

我需要做些什么吗?

我需要打开自定义错误处理(在网络配置中)还是什么?


编辑:我正在尝试做 twitter 所做的事情。他们的Http 响应代码文档显示/解释了一些示例,他们如何处理 404 等。我想在我的 MVC 应用程序中这样做。

编辑2:我所做的代码在这里列出,供任何人参考:)

0 投票
2 回答
35916 浏览

http - 在 RESTful API 中发送身份验证失败信号

我正在编写一个小应用程序,它公开了一个简单的 REST-ish HTTP API。由于缺乏授权,我一直在试图决定如何发出失败信号。

该应用程序没有用于身份验证的 API,而是依赖于包含客户端通过其他服务获取的会话令牌的 cookie 的存在。应用程序验证会话并使用通过验证过程获得的身份来执行特定于应用程序的授权。客户端无法直接向此应用程序进行身份验证。

我的问题是,用于拒绝未经授权的请求的明显 HTTP 状态代码“401 Unauthorized”是根据“WWW-Authenticate”标头指定的。见rfc2616 秒 10.4.2

响应必须包含一个 WWW-Authenticate 头字段(第 14.47 节),其中包含适用于所请求资源的质询。

我不敢相信这是一个不常见的问题。简单地重载 401 以包含更一般的用途是否很常见?浏览器弹出 auth/e 对话框怎么样(顺便说一下,我在测试中没有看到,所以也许 POST 不会发生这种情况)?

底线:在这种情况下使用 401 是否可以,还是有更好的解决方案?

0 投票
3 回答
167 浏览

php - 在 PHP 中跟踪和测试滥用客户端

现在有一个主题可以采取多种方式。希望我能够在描述我的问题并开始获得建议时对其进行去混淆处理。

我正在开发一个将替换现有站点的站点。从历史上看,我们遇到的问题之一是蜘蛛机器人进入并吸收所有内容。现在我们不介意正在下载内容。事实上,我们对此感到高兴,但是一些批量下载器和下载加速器已被证明与当前站点存在问题。

我正在寻找的是位于我的 php 开头的东西,它几乎首先运行。它获取页面请求的指纹(ip、referrer、请求 uri、cookie、会话 id 等)并将其传递给...某物。然后将指纹与最后一秒或三秒内的指纹进行比较。然后,它会根据某个预先配置的阈值返回一条消息,以处理该请求。

一些阈值是:

  • 用户在过去 0.n 秒内请求了 > x 个页面。
  • 用户在 < 0.n 秒内请求了相同的页面。
  • 用户在最后 n 秒内向表单提交了相同的数据。

所以你看我在看一些很紧的窗户。检测这样的事情是否可行?我可以使用某种文件或数据库数据源来做到这一点吗?无论我使用什么来存储页面加载之间的指纹,都会经历很多流失,因为大多数数据将保留一两秒钟。我应该只是有一些东西可以解析 apache 日志来检查阈值吗?我是否应该寻找某种可以从脚本调用的将数据保存在内存中一两秒的外部守护进程?apache 中有什么东西可以处理这个问题,我是否只需要向服务器人员求助来处理这个问题?

假设这是我可以在 PHP 或一些称为外部守护程序中执行的操作,我该如何响应超出阈值的行为?我的直觉说 HTTP 响应,比如 408 或 503,但我的直觉经常是错误的。我能做些什么来告诉客户退后一点?某种“哇”页面?

0 投票
1 回答
1492 浏览

php - PHP Curl 获取 HTTP 代码,而不是整个文档

我在请求某些文件时在 PHP 中使用 curl 来检查 HTTP 代码,我试图让我的速度运行得更快,所以我想知道有没有办法让它在不实际获取网页的情况下获取 HTTP 代码远程主机

0 投票
4 回答
46229 浏览

http - 当站点停机进行维护时发送的正确 HTTP 状态代码是什么?

是否有 HTTP 状态代码告诉 Google(和其他人)离开,稍后再索引我

基本上,一个语义上告诉客户该站点因维护而停机?

我考虑过的是

我倾向于最后一个,但只是好奇哪个是正确的选择。

0 投票
2 回答
307 浏览

c# - 检查响应代码 C#

我想知道是否有办法使用 C# 检测网站上的响应代码?由于 C# .NET 具有基于 HTTP 的方法,我假设它可以完成?

谢谢

0 投票
8 回答
476491 浏览

php - PHP:如何发送 HTTP 响应代码?

我有一个 PHP 脚本需要使用 HTTP 响应代码(状态代码)做出响应,例如 HTTP 200 OK,或者一些 4XX 或 5XX 代码。

我怎样才能在 PHP 中做到这一点?

0 投票
19 回答
1291778 浏览

http-headers - 403 Forbidden vs 401 Unauthorized HTTP 响应

对于存在的网页,但用户没有足够的权限(他们没有登录或不属于正确的用户组),应该提供什么正确的 HTTP 响应?

401 Unauthorized?
403 Forbidden?
还有什么?

到目前为止,我所读到的关于两者之间的区别并不是很清楚。每个响应适合哪些用例?

0 投票
1 回答
23364 浏览

asp.net - 设置 Response.Status 生成“HTTP 状态字符串无效”异常

我正在 ASP.NET 4.0 和 IIS7 中编写一个 HTTP 处理程序,我需要生成一个未找到文件的条件。

我从 Mathew McDonald 的新书 Pro ASP.Net 4 in C# 2010 中复制了以下代码。(响应变量是当前 HttpResponse 的一个实例。)

但是,我发现第一行会生成运行时错误HTTP status string is not valid.

如果,而不是上面的行,我使用以下内容:

然后一切似乎都正常。事实上,我什至看到 response.StatusCode 自动设置为 404。

我的问题是我不希望这在生产服务器上失败。因此,如果我能理解实现这一目标的“正确”方法,我会感觉好多了。为什么第一种方法对 Mathew McDonald 有效,但对我无效?第二种方法总是可靠的吗?

任何人都可以提供任何提示吗?

0 投票
3 回答
1294 浏览

http - 在 RESTful HTTP API 响应的状态行中本地化原因短语

我们有一个通过 HTTP 公开的 RESTful API,它以自然的方式利用 HTTP 状态行(状态代码和原因短语)将 API 结果传达给客户端(http://www.w3.org/Protocols/ rfc2616/rfc2616-sec6.html)。

例如,我们有以下并发错误的状态行:

HTTP/1.1 409 资源由其他用户更新。重新加载并重试。

最近事实证明,这些消息将呈现给针对我们的 API 构建的应用程序的最终用户,这意味着我们需要对它们进行本地化。我想知道在这种情况下这是否是一种可接受的方法,特别是考虑到这些消息的非 ASCII 字符集,或者是否应该将原因短语(状态描述)仅保留为低级消息和任何将使其成为“方式”的内容用户屏幕应该在响应正文中传递吗?如果我们选择本地化原因短语部分,以后有什么可以咬我们的吗?

在这种情况下,我们希望使用响应主体将新版本的资源传递给 API 客户端,并且包含其他数据并不能很好地配合它。