クライアントは、特定のパッケージに関する乱用をレポートするためにユーザーが使用できる URL を作成できます。 これは、パッケージ ソースとして、すべてのクライアント エクスペリエンス (サード パーティでも) が乱用レポートをパッケージ ソースに委任できるようにする場合に便利です。
この URL の作成に使用されるリソースは、サービス インデックスにある ReportAbuseUriTemplate リソースです。
バージョン管理
次の @type の値が使用されます。
| @type 値 | メモ |
|---|---|
| ReportAbuseUriTemplate/3.0.0-beta | 初期リリース |
| ReportAbuseUriTemplate/3.0.0-rc | ReportAbuseUriTemplate/3.0.0-beta の別名 |
URL テンプレート
次の API の URL は、前述のいずれかのリソースの @type 値に関連付けられている @id プロパティの値です。
HTTP メソッド
クライアントがユーザーに代わって乱用レポートの URL に要求を行うことは想定されていませんが、Web ブラウザーでクリックされた URL を簡単に開くことができるように Web ページで GET メソッドをサポートする必要があります。
URI を構築する
既知のパッケージ ID とバージョンを指定すると、クライアント実装で Web インターフェイスへのアクセスに使用する URL を構築できます。 クライアントの実装では、この作成された URL (またはクリック可能なリンク) をユーザーに表示して、Web ブラウザーで URL を開き、必要な乱用レポートを作成できるようにする必要があります。 乱用レポート フォームの実装は、サーバーの実装によって決まります。
@id の値は、次のいずれかのプレースホルダー トークンを含む URL 文字列です。
URL のプレースホルダー
| 名前 | タイプ | 必須 | メモ |
|---|---|---|---|
{id} |
string | いいえ | 乱用レポートの対象となるパッケージ ID |
{version} |
string | いいえ | 乱用レポートの対象となるパッケージ バージョン |
サーバーの実装による {id} と {version} の値の解釈では、大文字と小文字を区別せず、バージョンが正規化されているかどうかに影響を受けないようにする必要があります。
たとえば、nuget.org の乱用レポートのテンプレートは次のようになります。
https://www.nuget.org/packages/{id}/{version}/ReportAbuse
クライアントの実装で NuGet.Versioning 4.3.0 の乱用レポート フォームへのリンクを表示する必要がある場合は、次の URL が生成され、ユーザーに提供されます。
https://www.nuget.org/packages/NuGet.Versioning/4.3.0/ReportAbuse