Допустимо ли заменить http: // на // в скрипте < script src = & ldquo; http: // & hellip; & rdquo; & gt ;?

Не переносится, только Zsh, но довольно кратким.

Сначала убедитесь, что загружен zmv.

autoload -U zmv

Кроме того, убедитесь, что extendedglob включен:

setopt extendedglob

Затем используйте:

zmv '(**/)(*)~CVS~**/CVS' '${1}${(L)2}'

Для рекурсивно строчных файлов и каталогов, где имя не указано CVS .

452
задан unor 22 January 2014 в 21:02
поделиться

6 ответов

Относительный URL без схемы (http: или https:) допустимо, на RFC 3986: "Универсальный идентификатор ресурса (URI): Универсальный Синтаксис", Раздел 4.2 . Если клиент дросселирует на нем, то это - отказ клиента, потому что они не выполняют синтаксис URI, указанный в RFC.

Ваш пример допустим и должен работать. Я использовал тот относительный метод URL сам на в большой степени переданных сайтах и имел нулевые жалобы. Кроме того, мы тестируем наши сайты в Firefox, Safari, IE6, IE7 и Opera. Эти браузеры все понимают тот Формат ссылки.

384
ответ дан TRiG 23 January 2014 в 08:02
поделиться

Это совершенно допустимо для бросания протокола. Спецификация URL очень соглашалась с этим в течение многих лет, и я должен все же найти браузер, который не понимает это. Я не знаю, почему эта техника не более известна; это - идеальное решение тернистой проблемы пересечения границ HTTP/HTTPS. Больше здесь: переходы Http-https и относительные URL

16
ответ дан Lightness Races in Orbit 23 January 2014 в 08:02
поделиться
  • 1
    Я предпочитаю использовать модули по помощникам, потому что они - истинное OO, я могу включать/расширять их по желанию. Я могу сгруппировать материал вместе, который имеет фактическое значение. Помощники являются просто блоками. Я рекомендую только использовать тех для связанных с представлением методов. Не уверенный, что Вы имеете в виду с you'll get to the point ..... – nathanvda 22 November 2011 в 11:35

Он гарантированно работает в любом популярном браузере (я не беру в расчет браузеры с долей рынка менее 0,05%). Черт возьми, он работает в Internet Explorer 3.0.

RFC 3986 определяет URI как состоящий из следующих частей:

     foo://example.com:8042/over/there?name=ferret#nose
     \_/   \______________/\_________/ \_________/ \__/
      |           |            |            |        |
   scheme     authority       path        query   fragment

При определении относительных URI (Раздел 5.2), вы можете опустить любую из этих частей, всегда начиная слева. В псевдокоде это выглядит так:

 result = ""

  if defined(scheme) then
     append scheme to result;
     append ":" to result;
  endif;

  if defined(authority) then
     append "//" to result;
     append authority to result;
  endif;

  append path to result;

  if defined(query) then
     append "?" to result;
     append query to result;
  endif;

  if defined(fragment) then
     append "#" to result;
     append fragment to result;
  endif;

  return result;

URI, который вы описываете, является относительным URI без схемы.

150
ответ дан 22 November 2019 в 23:01
поделиться

Да, это описано в RFC 3986 , раздел 5.2:

(правка: Упс, моя ссылка на RFC устарела).

2
ответ дан 22 November 2019 в 23:01
поделиться

Многие люди называют это относительным URL-адресом протокола.

Это вызывает двойную загрузку файлов CSS в IE 7 и 8 .

40
ответ дан 22 November 2019 в 23:01
поделиться

Здесь я дублирую ответ в Скрытые возможности HTML :

Использование независимого от протокола абсолютного путь:

 

Если браузер просматривает страницу в SSL через HTTPS, тогда он запросит этот актив с протоколом https, в противном случае он запросит его по HTTP.

Это предотвращает эту ужасную "эту страницу" Содержит как безопасные, так и небезопасные Items "сообщение об ошибке в IE, сохраняя все ваши запросы активов в тот же протокол.

Предупреждение: при использовании на или @import для таблицы стилей, IE7 и IE8 загрузите файл дважды . Все остальные использование, однако, вполне нормально.

23
ответ дан 22 November 2019 в 23:01
поделиться
Другие вопросы по тегам:

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