"~" превращается в "%7E" в Sitecore?
Используя Sitecore, я делаю что-то вроде настройки URL медиа.
когда в PageEditor
В режиме, вы, ребята, когда-нибудь встречали проблему "~"?
например, проверьте источник страницы в IE(или Chrome, Firefox), я ожидал что-то вроде,
<img src="~/media/twitter.gif" alt="Twitter" width="100" height="22" />
но придумал это,
<img src="%7E/media/twitter.gif" alt="Twitter" width="100" height="22" />
Я проверил свой код, я не думаю, что сделал что-то, что изменило бы '~' на '%7E'. Когда-нибудь встречал что-то подобное, если у вас есть, пожалуйста, дайте мне знать, и как я могу это решить. Спасибо
3 ответа
%7E
это кодировка URL для ~
, HTML, использующий закодированное значение, вполне подходит.
Если вы пытаетесь использовать ~
чтобы попасть в домашнюю директорию пользователя (я подозреваю, что вы), не делайте этого. Узнайте о веб-документации, а также об относительных и абсолютных путях, а затем выясните, какой путь вы хотите использовать.
Как уже было сказано ранее, %7E
это кодировка URL ~
условное обозначение.
У нас была похожая проблема при копировании ссылок в редакторе форматированного текста. В широком смысле, кажется, что происходит то, что при копировании вывода HTML в редакторе форматированного текста мы уже работаем в браузере, который отображает исходный код HTML. Например, ссылки разрешаются браузером (поэтому, если автор вошел в Sitecore для редактирования для определенного домена хоста, но работает на другом домене хоста, ссылки преобразуются в домен, в который они вошли).
У нас был конкретный %7E
замена ~
проблема при этом тоже.
Вы не даете мне достаточно подробностей, чтобы быть уверенным, что это именно то, что происходит в вашем случае, но это кажется вполне вероятным. Если вы вставляете копию в HTML, то вы не получаете доступ к необработанным строкам.
РЕДАКТИРОВАТЬ: Это, вероятно, связано с известной ошибкой Sitecore с добавлением информации о пути для редактора форматированного текста к ссылке при вставке копии. У Sitecore есть решение для этого здесь:
~
является ярлыком для доступа к вашему домашнему каталогу (или, если он передан приложению, работающему от имени другого пользователя, к домашнему каталогу этого пользователя). Поэтому обычно не кошерно вести URL с ~
,
С другой стороны, браузер преобразует фрагменты, закодированные в URL, в их эквивалент, если только он не находится в строке запроса. Например:
http://en.wikipedia.org/wiki/Sir%20Mix-a-Lot
Будем разрешать:
http://en.wikipedia.org/wiki/Sir Mix-a-Lot
(который MediaWiki далее разрешает:
http://en.wikipedia.org/wiki/Sir_Mix-a-Lot
Но если вы пытаетесь получить доступ к пути к файлу вне webroot, вы, скорее всего, получите ошибки, особенно на стороне клиента. А если нет, то, скорее всего, с тобой поговорит, если тебя поймают.