Подтвердить что ты не робот

Допустимые символы для схем URI?

Я думал о Регистрация приложения в протоколе URL, и я хотел бы знать, какие символы разрешены в схеме?

Некоторые примеры:

  • h323 (имеет номера)
    • h323:[<user>@]<host>[:<port>][;<parameters>]
  • z39.50r (также имеет .)
    • z39.50r://<host>[:<port>]/<database>?<docid>[;esn=<elementset>][;rs=<recordsyntax>]
  • paparazzi: http (имеет :)
    • paparazzi:http:[//<host>[:[<port>][<transport>]]/

Итак, какие персонажи я могу использовать?
Можем ли мы...

  • @:TwitterUser
  • #:HashTag
  • $:CapitalStock
  • ?:ID-10T

... и т.д., если требуется, или символы в схеме ограничены стандартом?

4b9b3361

Ответ 1

Согласно RFC 2396, Приложение A:

  scheme        = alpha *( alpha | digit | "+" | "-" | "." )

Значение:

Схема должна начинаться с буквы (в верхнем или нижнем регистре) и содержать буквы (все еще верхний и нижний регистр), номер, "+", "-" и ".".


Примечание: в случае

paparazzi:http:[//<host>[:[<port>][<transport>]]/

схема - это только часть "папарацци".

Ответ 2

Схема в соответствии с RFC 3986 определяется как:

scheme      = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )

Таким образом, схема должна начинаться с буквенного символа (A - Z, A - Z) и может сопровождаться любым количеством буквенно-цифровых символов +, - или ..

Ответ 3

Quoth RFC 2396:

Имена схем состоят из последовательности символов, начинающихся с    буквой в нижнем регистре и последующей комбинацией нижнего регистра    буквы, цифры, плюс ( "+" ), период ( "." ) или дефис ( "-" ).