パッケージの詳細 URL テンプレート
クライアントは、ユーザーが Web ブラウザーでパッケージの詳細を表示するために使用できる URL を構築することができます。 これは、NuGet クライアント アプリケーションが表示するスコープ内に収まらない可能性があるパッケージに関する追加情報をパッケージ ソースが表示する場合に便利です。
この URL の構築に使用されるリソースは、サービス インデックスにある PackageDetailsUriTemplate
リソースです。
次の @type
の値が使用されます。
@type 値 | メモ |
---|---|
PackageDetailsUriTemplate/5.1.0 | 初期リリース |
次の API の URL は、前述のいずれかのリソースの @type
値に関連付けられている @id
プロパティの値です。
クライアントは、ユーザーに代わってパッケージの詳細 URL にリクエストを行うことを意図されていませんが、Web ページでは、Web ブラウザーでクリックされた URL を簡単に開くことができる GET
メソッドがサポートされる必要があります。
既知のパッケージ ID とバージョンを指定すると、クライアント実装で Web インターフェイスへのアクセスに使用する URL を構築できます。 クライアント実装では、この構築された URL (またはクリック可能なリンク) をユーザーに表示して、ユーザーが Web ブラウザーを開いて URL にアクセスし、パッケージの詳細を確認できるようにする必要があります。 パッケージの詳細ページの内容は、サーバーの実装によって決まります。
URL は絶対 URL である必要があり、スキーム (プロトコル) は HTTPS である必要があります。
サービス インデックス内の @id
の値は、次のいずれかのプレースホルダー トークンを含む URL 文字列です。
名前 | タイプ | 必須 | メモ |
---|---|---|---|
{id} |
string | いいえ | 詳細を取得するパッケージ ID |
{version} |
string | いいえ | 詳細を取得するパッケージのバージョン |
サーバーは、大文字と小文字を問わず、{id}
値と {version}
値を受け入れる必要があります。 さらに、サーバーはバージョンが正規化されているかどうかに影響を受けないようにする必要があります。 つまり、サーバーは正規化されていないバージョンも受け入れる必要があります。
たとえば、nuget.org のパッケージの詳細テンプレートは次のようになります。
https://www.nuget.org/packages/{id}/{version}
クライアント実装で NuGet.Versioning 4.3.0 のパッケージの詳細へのリンクを表示する必要がある場合は、次の URL が生成され、ユーザーに提供されます。
https://www.nuget.org/packages/NuGet.Versioning/4.3.0