Всегда безопасно удалить запаздывающую наклонную черту с URL?

Это зависит от того, хотите ли вы писать чистый код или нет. Когда C впервые разрабатывался, важность чистого кода не была полностью осознана, и компиляторы были очень просты: использование подобного вложенного назначения часто могло привести к более быстрому коду. Сегодня я не могу вспомнить ни одного случая, когда хороший программист сделал бы это. Это просто делает код менее читаемым и более сложным в обслуживании.

7
задан Makoto 9 September 2015 в 15:41
поделиться

4 ответа

Нет, это не всегда безопасно. Веб-сервер может интерпретировать часть пути URL как угодно. Вы не можете сказать, что он будет делать (разрешить URI), не используя GET или HEAD в URL.

19
ответ дан 6 December 2019 в 05:56
поделиться

Нет. Я сталкивался с ситуациями, когда, в зависимости от настроек в файле .htaccess, некоторые каталоги или «чистые URL-адреса» (например, созданные CMS) не могли быть доступны без косой черты в конце. Это редко и может быть ошибкой со стороны веб-мастера, но может случиться.

4
ответ дан 6 December 2019 в 05:56
поделиться

Это может быть безопасно в том смысле, что вы получите один и тот же ответ с или без косой черты (и я не могу гарантировать, что это правда), но они определенно могут означать разные вещи. Рассмотрим URL-адрес, который ссылается на каталог, или что-то, представленное сайтом как каталог. Использование URL

http://www.somesite.com/directory/

... дает понять, что вы запрашиваете каталог. Если вы отрежете косую черту в конце:

http://www.somesite.com/directory

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

См. эту статью для более подробной информации.

7
ответ дан 6 December 2019 в 05:56
поделиться

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

1
ответ дан 6 December 2019 в 05:56
поделиться
Другие вопросы по тегам:

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