urn в url для службы RESTful, создание пути url - PullRequest
3 голосов
/ 16 июля 2011

мы работаем над созданием сервиса RESTFul и пытаемся выбрать формат пути URL.

у нас есть urn для уникальной идентификации ресурса во всей организации, и мы создаем службу Rest для обслуживания этого ресурса в формате, который запрашивающий запрашивает через согласование содержимого http.

Мой вопрос заключается в том, как нам сформировать путь URL для службы, который имеет больше смысла.

http://{domain}/{somethinghere}/{full urn string}
or
http://{domain}/{somethinghere}/{urn-part-1}/{urn-part-2}/{urn-part-3}

1 Ответ

3 голосов
/ 05 сентября 2011

У меня тоже такой же вопрос! ... ИМХО, я бы использовал полную строку urn,

http://{domain}/{somethinghere}/{full urn string}

Это элегантно, полулегально и имеет удобную для пользователя функцию, облегчающую егоскопировать и вставить строки URN в ваш URL.Вот некоторая домашняя работа, которую я сделал:

Есть старый экспериментальный RFC 2169 , который предлагает ввести полную строку урны, а не%, заключая в кавычки (:).Это чисто и элегантно ... И есть примеры двоеточий в дикой природе, например,

http://en.wikipedia.org/wiki/Talk:Buckminster_Fuller

Один из моих страхов (кто-нибудь может подтвердить или отклонить это?) - это то, что некоторые браузеры, серверы, платформы,или инструменты могут попытаться процитировать% или иным образом задушить двоеточие из-за различных предположений о том, что представляет собой двоеточие.

Ни RFC 1630 , ни другие RFC не дают понять, является лидвоеточие может использоваться в пути схемы http или нет.Однако есть предостережение!Размещение двоеточия важно при определении того, является ли URL-адрес абсолютным (и это указано в разделе «Частичная (относительная) форма» в RFC 1630).Если перед косой чертой (/) стоит двоеточие, то URL-адрес является абсолютным.(Обратите внимание, что двоеточие упоминается как «зарезервированный» разделитель в RFC, но предполагаемое зарезервированное использование его ясно и не исключает использование в путях.)

Я хотел бы здесь больше идейоб этом ... (а не просто избавиться от простого слэша, поскольку это не так элегантно).

...