2010-11-04 2 views
0

Я предполагаю, что браузер связывается с веб-сервером и запрашивает «src» (в тех ситуациях, когда есть что-то для src).Как тег <script> обрабатывается на уровне машины?

Можно ли каким-либо образом управлять этим взаимодействием? Сколько информации доступно на сервере о том, кто хочет src и когда?

В качестве альтернативы, можно было преднамеренно запросить 404 запрос, а затем управлять механизмом 404 для надлежащего реагирования?

ответ

1

Не используйте для этого 404 обработки. Если вы хотите динамически генерировать javascript, нет необходимости.

Браузеру не важно, какой URL-адрес находится в атрибуте src="" - он, конечно же, не должен заканчиваться .js. Важно то, что независимо от URL-адреса, он должен вернуть свой контент с типом контента application/javascript.

Так что проще всего сделать, это положить путь к PHP (если это то, что вы используете файл) и просто убедиться, что то, что возвращенное действует Javascript, посланный с правильным заголовком Content-Type HTTP

0

Сценарии, указанные с помощью атрибута src, обрабатываются так же, как и любой другой ресурс на странице. Если вы вернете код 404, браузер не будет пытаться обрабатывать сервер для этого ресурса. Сервер получает всю обычную информацию запроса HTTP (при условии, что браузер отправляет ее в обычном режиме), а заголовок Referrer: установлен на страницу, которая включает ресурс.

+0

Некоторые веб-серверы разрешить пользовательские обработчики 404. Это то, о чем я говорю в последнем абзаце. – bugmagnet

+0

Несомненно, почему бы не сохранить весь свой веб-сайт в обработчике 404? –

+0

@boost: Да, но они все равно будут возвращать код 404. – Amber