Какие коды состояния HTTP Вы на самом деле используете при разработке веб-приложений? [закрытый]

Посмотрите GCC и Clang:

Оба компилятора можно использовать для компиляции Ваш исходный код через терминал. GCC существует дольше и имеет лучшую поддержку, но может быть немного медленным. Clang новее, поэтому используется менее широко, но заметно быстрее, чем GCC при компиляции исходного кода.

Пример команды Clang в вашем терминале: clang -o hello hello.c && ./hello

Это скомпилирует ваш файл hello.c и даст вам исполняемый файл hello, который вы затем сможете запустить. Мы просто предположим, что при запуске программы hello выводится Hello, World! на консоль.

10
задан Adam Byrtek 2 January 2009 в 00:37
поделиться

10 ответов

Те, которых я использую (что я мог найти с быстрым grep 'Status:' так или иначе):

  • 200 Успешно получил ресурс, не влияя на него
  • 201 Отправленный каждый раз, когда представление формы помещает что-то значительное в базу данных (сообщение форума, учетная запись пользователя, и т.д.), создавая новый ресурс
  • 204 Отправленных с пустым телом, например, после УДАЛЕНИЯ
  • 304 кэширования HTTP. Я нашел, что в этом очень трудно разобраться, так как это должно составлять пользователей, изменяющих настройки дисплея и так далее. Лучшая идея, которую я придумал для этого, использует хеш предпочтений пользователя как Завершающий тег. Не помогает, что большинство браузеров имеет непредсказуемое и непоследовательное поведение здесь...
  • 400 Используемых для представлений невоспитанности, которые приводят некоторую проверку проверки к сбою.
  • 403 Используемых каждый раз, когда кто-то где-нибудь, они не должны быть (хотя я стараюсь избегать, это, не отображая ссылки для наполнения пользователей не должно получать доступ).
  • 404 Кроме нормальных веб-сервера я использую их, когда URL содержит недопустимые Идентификационные номера. Я предполагаю, что это была бы хорошая идея проверить в этом случае, существует ли более высокий действительный идентификатор, и отправьте 410 вместо этого...
  • 429 то, Когда запросы пользователя также, часто посещает
  • 500: Я склонен помещать их в выгоду {} блоки, где единственная опция состоит в том, чтобы сдаться, чтобы удостовериться, что что-то значимое отправляется в браузер.

Я понимаю, что мне могло сойти с рук простое разрешение серверу отправить "200" для всего, но они экономят много усилий, когда пользователи видят (или вызывают) ошибки и говорят Вам о них. Я уже заставил функции отображать сообщения доступа запрещен и так далее, таким образом, это не много работы для добавления их так или иначе.

13
ответ дан 3 December 2019 в 14:06
поделиться

Я склонен использовать 405 Методов, Не Позволенных, когда кто-то пытается ПОЛУЧИТЬ URL, который может только быть ОТПРАВЛЕН. Кто-либо еще делает это тот же путь?

2
ответ дан 3 December 2019 в 14:06
поделиться

В платформе Aida/Web мы используем просто

  • 200 хорошо
  • 302 Перенаправления
  • 404 не найденный
  • 500 Внутренняя ошибка сервера
1
ответ дан 3 December 2019 в 14:06
поделиться

303 Видят Другой, необходимость для PRG, который необходимо использовать теперь, если Вы уже не.

3
ответ дан 3 December 2019 в 14:06
поделиться

Вот наиболее распространенные коды ответа, на основе моего опыта:

Коды ответа в диапазоне 1xx-2xx обычно обрабатываются автоматически базовым веб-сервером (т.е. Apache, IIS), таким образом, Вы не должны волноваться о тех.

Коды 301 и 302 обычно используются для перенаправлений, и 304 используется много, когда клиент или прокси уже содержат действительную копию данных и не нуждаются в новой версии с сервера (см. RFC для получения дополнительной информации о точно, как это работает).

Код 400 обычно используется, чтобы указать, что клиент отправил плохие или неожиданные данные, которые вызвали проблему в сервере.

Код 403 для выполнения аутентификации, которая снова обычно обрабатывается несколько автоматически конфигурацией сервера.

Код 404 является кодом ошибки для страницы, не найденной.

Код 500 указывает на состояние ошибки в сервере, который не обязательно вызывается данными, отправленными от клиента. Например, отказы соединения с базой данных, программные ошибки или другие необработанные исключения.

Код 502 обычно замечается, если Вы проксируете от веб-сервера (такого как Apache) к серверу приложений (такому как Tomcat) в бэкенде, и связь не может быть установлена с сервером приложений.

Для асинхронных вызовов (т.е. ответы AJAX/JSON) является обычно самым безопасным всегда возвратить 200 ответов. Даже если была ошибка в сервере при обработке запроса, лучше включать ошибку в объект JSON и позволять клиенту иметь дело с ним тот путь. Так как причина - это не, все веб-браузеры предоставляют доступ к органу по ответу для не200 кодов ответа.

2
ответ дан 3 December 2019 в 14:06
поделиться

Я в основном использую всех их в соответствующих случаях. Сама спецификация определяет каждый код и обстоятельства, при которых они должны использоваться.

При создании УСПОКОИТЕЛЬНОГО веб-приложения я не рекомендую привередливо выбрать коды состояния и ограничиваю себя подмножеством полного спектра. Таким образом, если здание веб-приложение для определенного клиента HTTP - в этом случае каждый действительно не создает веб-приложение, создавание приложения для того определенного клиента.

В моей фирме у нас есть некоторые клиенты Flex. Они не могут правильно обработать коды состояния кроме 200, таким образом, мы сделали, чтобы они отправили специальный параметр со своими запросами, который говорит нашим серверам всегда отправлять 200, даже когда это не надлежащий ответ.

1
ответ дан 3 December 2019 в 14:06
поделиться

418: Я - заварной чайник

Из http://www.ietf.org/rfc/rfc2324.txt текстовый управляющий протокол кофейника Hyper (HTCPCP/1.0)

13
ответ дан 3 December 2019 в 14:06
поделиться

У меня были кошмары о номере 500.

0
ответ дан 3 December 2019 в 14:06
поделиться

500 Внутренних Ошибок Сервера возвращаются в Aida/Web когда Ваше повышение веб-приложения исключение. Поскольку это - приложение Smalltalk, окно исключения повышено на сервере (при выполнении его headfull), в то время как пользователь добрался 500 и короткий стек.

На сервере можно затем открыть полный отладчик и попытаться решить проблему, в то время как сервер продолжает работать, конечно. Другая хорошая вещь состоит в том, что окно исключения с полным стеком ожидает Вас, пока Вы не приходите.

Заключение: 500 благословение, не кошмар!

0
ответ дан 3 December 2019 в 14:06
поделиться

Don't forget about 503 - Service Unavailable. This one is essential for site downtime. Especially where Search Engines are concerned.

Say you're taking the site down for a few hours for maintenance or upgrade work. By directing all requests to a friendly page that returns a 503 code, it tells spiders to "try again later".

If you simply display a "Temporarily Down" page but still return 200 OK, the spider may index your error pages or, worse, replace existing indexing with this "new" content.

This could seriously impact your SEO rankings, especially if your a large, popular site.

6
ответ дан 3 December 2019 в 14:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: