Почему браузерам разрешено отображать исходный код на стороне клиента? - PullRequest
1 голос
/ 18 марта 2011

Почему браузерам разрешено отображать исходный код для файлов HTML / CSS / JavaScript? Мне сказали, что запутывание не является окончательным ответом на предоставление защиты. Таким образом, как только код отправляется на клиентскую сторону, кто-нибудь может украсть данные переднего плана? Разве все популярные браузеры не предоставляют механизм паролей, чтобы неавторизованные пользователи не могли видеть исходный код? Компании тратят много времени, денег и других ресурсов на разработку профессиональных сайтов, однако, похоже, что ворам много бизнеса.

Обратите внимание, что я не спрашиваю, можно ли скрыть исходный код или какой инструмент можно использовать для этого. Там уже были вопросы / обсуждения по этому поводу. Исходный код на стороне клиента может быть виден браузерам, но я не понимаю, ПОЧЕМУ им разрешено показывать его пользователю. Разве они не могут обрабатывать файлы в фоновом режиме вместо того, чтобы сказать: «Вот код для просматриваемой страницы. Идите и проверьте!»?

ОБНОВЛЕНИЕ: Спасибо за ответы. Я вижу, что есть и другие способы получения клиентского кода. Поэтому наложение ограничений на браузеры не решит проблему. Обычный текст, мммм. Базовая интерфейсная структура Интернета могла бы больше помочь разработчикам защитить свою работу. :)

Ответы [ 4 ]

7 голосов
/ 18 марта 2011

В конечном счете, даже если браузеры удалили параметр Показать исходный код, было бы совершенно тривиально (как в одной команде wget или в нескольких строках C #) написать программу, которая будет разметка, JS и CSS.

Веб-сервер обслуживает документ, поэтому вы предоставляете документ пользователю. Почему вы ожидаете, что документ будет каким-то образом скрыт от пользователя?

РЕДАКТИРОВАТЬ Я думаю, вам нужно немного больше понять историю Интернета, а также то, для чего оно было и не было предназначено. HTTP - это , а не «Интернет», также как и «FTP», TelNet или World of Warcraft - «Интернет». Когда Интернет был изобретен, HTML, CSS и JavaScript просто не существовало, поэтому проблема защиты интеллектуальной собственности не была проблемой. ARPANET (предшественник современного интернета) был разработан для предоставления доступа к суперкомпьютерам для удаленных работников - Интернет не был удаленным фактором.

2 голосов
/ 18 марта 2011

Потому что сокрытие кода - пустая трата времени?

Предположим, у вас есть мир, в котором все веб-браузеры запрещают вам видеть HTML, CSS и JavaScript. Если я хочу увидеть код, все, что мне нужно сделать, это Telnet на ваш сервер и вставить HTTP-коды вручную, и я увижу код. Или я пишу сценарий на [вставьте язык сценариев по вашему выбору], который занимает около пяти минут моего дня, и он сделает это за меня. Или я использую такие программы, как wget, fetch или тому подобное.

Зачем беспокоиться создателю браузера?

1 голос
/ 18 марта 2011
  1. Поскольку HTML / CSS / JAvascript не является исходным кодом, это своего рода код result .
  2. Почему не все браузеры могут предоставить парольмеханизм, чтобы неавторизованные пользователи не могли видеть исходный код?Потому что им не нужно это делать, и поскольку это бизнес , чем больше «функций» они предоставляют, тем популярнее они.
  3. Вам не нужно бытьбраузер для просмотра html / css / javasript.
1 голос
/ 18 марта 2011

HTML + CSS + Javascript все отправляются в виде обычного текста, поэтому в браузерах не будет особого смысла препятствовать пользователю просматривать это, так как любой, кто хочет неправильно использовать необработанные данные, сочтет тривиальным доступ к ним без браузера,На самом деле они могли бы получить его только с помощью telnet.

...