gpt4 book ai didi

internet-explorer - 为旧浏览器显示替代错误页面时使用什么 HTTP 状态代码?

转载 作者:可可西里 更新时间:2023-11-01 16:10:15 26 4
gpt4 key购买 nike

我有一个大量使用 CSS3 和一些 HTML5 现代功能的网站。所以它在 IE7 或更低版本中不起作用并且看起来很糟糕。我们决定不支持这些旧浏览器,因为这对极少数用户来说工作量太大。他们不会显示常规页面,而是会看到特殊的错误/警告页面,他们会在其中告知为什么会看到该页面以及他们应该安装更新的浏览器。

这很好用。但我的问题是——我应该用这个页面发送什么 HTTP 状态代码?有关系吗 ?现在,它是常规的 200 OK。

感谢您的时间和精力。

最佳答案

这里有多种选择,它们主要取决于两个参数:

  • 状态代码是否适合此类问题,是否允许在不涉及 HTTP 事务内容的情况下使用它那是发送到浏览器? (浏览器显然不会通过 HTTP 告诉它是否支持给定的 HTML/CSS 标准)。

  • 浏览器将如何解释它。某些浏览器在收到特定状态代码时甚至懒得渲染发送的 HTML,而是显示默认的内置页面。

我会做的是选择一个正确记录的错误代码并将其用作语义响应,并确保浏览器不会忽略正文。我建议两种不同的解决方案:

  • 在最初请求的资源上响应 302 Found,并在发送 200 OK 时将浏览器重定向到您的错误页面。这是大多数网站管理员在出现此类问题时所做的,主要是因为 HTTP 事务 本身没有失败,只是我们正在重定向用户,以便根据 extra-HTTP 生成正确的 View 参数。

  • 通过告诉浏览器发生了什么来为您的响应提供语义错误代码。同样,浏览器如何对此错误代码使用react是依赖于实现的,并且可能会有很大差异。显然,一个 4xx status code应该返回,因为它旨在发出客户端错误信号。我很想使用 415 Unsupported Media Type417 Expectation Failed

HTTP 响应代码来源:http://en.wikipedia.org/wiki/List_of_HTTP_status_codes

关于internet-explorer - 为旧浏览器显示替代错误页面时使用什么 HTTP 状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16759678/

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