только коммуникация заголовка http? - объясните

Мне нравится ikiwiki, потому что он может сохранить страницы Wiki в реальной системе управления исходным кодом (я использую Мерзавца). Это означает, что я могу отредактировать свою Wiki офлайн и объединить страницы, позже использующие все стандартные функции Git.

Ikiwiki также поддерживает Скидку с цены по умолчанию, которая является хорошим легким языком разметки.

3
задан 30 September 2019 в 02:34
1 ответ

Перенаправление обычно производится через коды состояния ответа HTTP 301 (Перемещенный Постоянно) или 302 (Найденный / Перемещенный Временно). Тот 301 и 302 кода состояния ответа HTTP, используемые для выполнения перенаправления, включены в HTTP-заголовки.

Просто, потому что Вы "не видели, что любое перенаправление в Firefox" не означает, что перенаправление не происходило: это было, негласно.

Существует другой способ перенаправить, с помощью JavaScript на странице. С JavaScript перенаправление может делаться ясным пользователю, где им можно показать страницу сначала и затем перенаправляться (возможно, после задержки) к другому местоположению. Но, это не перенаправления HTTP, которые перемещаются на основании кодов состояния ответа HTTP-заголовка.

Рассматривать Ваш вопрос о Ruby: необходимо задать тот вопрос на Переполнении стека. Но, короче говоря да, необходимо смочь установить 301 и 302 кода ответа перенаправления с любой веб-технологией серверной стороны.


ОБНОВЛЕНИЕ: рассматривать дальнейший вопрос в Вашем комментарии ниже:

Если требуется узнать больше, как HTTP работает, то я рекомендую следующую книгу: HTTP: Полное руководство David Gourley & Brian Totty. Можно также консультироваться с официальным стандартом HTTP, как определено RFC 2616: Протокол передачи гипертекста - HTTP/1.1.

Относительно того, почему серия запросов выше в Вашем вопросе делает 11 шагов, необходимо было бы спросить исходных авторов рассматриваемого программного обеспечения. Это, вероятно, возможно, было реализовано с меньшим количеством шагов, но вероятно не только 1 шагом. Рассмотрите, по крайней мере одно из перенаправлений необходимо серверу для установки cookie в браузере пользователя перед пересылкой их к защищенному ресурсу.

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

При попытке написать сценарий страницы входа в систему, необходимо удостовериться, что СООБЩЕНИЯ программы к серверу соответствует реальному запросу во всех отношениях, включая тот параметр, который Вы в настоящее время не включительно

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

И наконец - для отладки получите и запрос и заголовки ответа и тело, от веб-страницы, и из программы, и сравните их. С подозрением относитесь к любым различиям.

6
ответ дан 3 December 2019 в 05:36
  • 1
    @BasicallyMoney.com: Чтобы быть честным, я спрашиваю относительно ТАК. Без ответа до сих пор. Я полагаю, что могу кодировать некоторое решение или обходное решение к этому, но я понятия не имею, что продолжается, таким образом, я должен понять сначала. Связь HTTP belowns на Serverfault, таким образом, я здесь :-) –  Radek 1 February 2010 в 22:09
  • 2
    @BasicallyMoney.com: таким образом, если я понял право. Веб-браузер и веб-сервер связываются only on http headers and cookies level. Таким образом, если нет взаимодействия с пользователем, это должно быть возможно к script эта коммуникация, правильно? Есть ли что-нибудь, что можно рекомендовать? Сделать? Читать? Без разницы? Я все еще не понимаю понятия 11 строк или коммуникации. –  Radek 1 February 2010 в 22:13
  • 3
    @BasicallyMoney.com: очень хорошее объяснение. Спасибо за это. Еще одно разъяснение. Таким образом, браузер и сервер могут связаться только через http заголовки и/или cookie и не отправить тело HTML? –  Radek 2 February 2010 в 02:06
  • 4
    @Radek: Да, браузер и сервер могут связываться только через HTTP-заголовки и cookie без тела HTML. Однако это isn' t очень полезный разговор, если, в конце, there' s никакое тело HTML. Но ведя до страницы, которая на самом деле отображена, да, могут быть некоторые назад и вперед между клиентом и сервером, который только основан на заголовке: это включает перенаправления HTTP, проблему/ответ Аутентификации HTTP и Запросы HTTP, чтобы видеть, является ли кэшируемый элемент все еще текущим. –  Chris W. Rea 2 February 2010 в 17:13
  • 5
    com: огромное спасибо за это. Все - много cleaer. –  Radek 2 February 2010 в 20:20

Теги

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