Определите маршрут для обработки '/ # /' перед контроллером в MVC [duplicate]

Поддержка Unicode в PHP по-прежнему огромна. Хотя он способен преобразовывать строку ISO8859 (которая используется внутри нее) в utf8, ей не хватает возможности работать с строками unicode изначально, что означает, что все функции обработки строк будут искажать и повреждать ваши строки. Таким образом, вам нужно либо использовать отдельную библиотеку для правильной поддержки utf8, либо самостоятельно переписать все функции обработки строк.

. Легкая часть - это просто указать кодировку в заголовках HTTP и в базе данных и т. Д., Но нет что имеет значение, если ваш PHP-код не выводит допустимый UTF8. Это сложная часть, и PHP практически не помогает. (Я думаю, что PHP6 должен исправить худшее из этого, но это все еще вдалеке)

49
задан p.campbell 30 May 2013 в 16:44
поделиться

3 ответа

Вы не можете получить значение после символа # на сервере просто потому, что это значение никогда не отправляется на сервер. Только на стороне клиента javascript есть доступ к этому, поэтому определение маршрутов с помощью hash не имеет особого смысла.

48
ответ дан Darin Dimitrov 25 August 2018 в 19:48
поделиться

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

6
ответ дан Robert Levy 25 August 2018 в 19:48
поделиться

Как указано, нет способа сделать это с помощью маршрутизации. Единственное возможное решение - добавить # фрагмент к вашему URL-адресу при перенаправлении действий вашего контроллера. Например:

return Redirect(Url.Action("Index", "Home") + "#create");
101
ответ дан Rory McCrossan 25 August 2018 в 19:48
поделиться
Другие вопросы по тегам:

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