Sdílet prostřednictvím


Nabídnutí a odstranění

V závislosti na implementaci serveru je možné nasdílet, odstranit (nebo zrušit jejich seznam) a znovu vylistovat balíčky pomocí rozhraní API NuGet v3. Tyto operace jsou založené na PackagePublish prostředku nalezeného v indexu služby.

Vytváření verzí

Použije se následující @type hodnota:

@type Hodnotu Notes
PackagePublish/2.0.0 Počáteční verze

Základní adresa URL

Základní adresa URL pro následující rozhraní API je hodnota @id vlastnosti PackagePublish/2.0.0 prostředku v indexu služby zdroje balíčku. V následující dokumentaci se používá adresa URL nuget.org. Zvažte https://www.nuget.org/api/v2/package jako zástupný symbol hodnoty @id nalezené v indexu služby.

Všimněte si, že tato adresa URL odkazuje na stejné umístění jako starší koncový bod nabízení V2, protože protokol je stejný.

Metody HTTP

Tento PUTprostředek podporuje metody a POSTDELETE metody HTTP. Které metody jsou podporovány v jednotlivých koncových bodech, najdete níže.

Nasdílení balíčku

Poznámka:

nuget.org má další požadavky na interakci s koncovým bodem nabízených oznámení.

nuget.org podporuje nabízení nových balíčků pomocí následujícího rozhraní API. Pokud balíček s zadaným ID a verzí již existuje, nuget.org nabízenou nabídku odmítne. Jiné zdroje balíčků můžou podporovat nahrazení existujícího balíčku.

PUT https://www.nuget.org/api/v2/package

Parametry požadavku

Název V Typ Požaduje se Notes
X-NuGet-ApiKey Hlavička string ano Například X-NuGet-ApiKey: {USER_API_KEY}

Klíč rozhraní API je neprůhledný řetězec, který uživatel získal ze zdroje balíčku a nakonfiguroval ho do klienta. Není určený žádný konkrétní formát řetězce, ale délka klíče rozhraní API by neměla překročit přiměřenou velikost pro hodnoty hlaviček HTTP.

Text požadavku

Text žádosti musí mít následující podobu:

Data formuláře s více částmi

Hlavička Content-Type požadavku je multipart/form-data a první položkou v textu požadavku jsou nezpracované bajty nabízeného souboru .nupkg. Další položky v těle s více částmi se ignorují. Název souboru nebo jakákoli jiná záhlaví položek s více částmi se ignorují.

Response

Kód stavu Význam
201, 202 Balíček byl úspěšně nasdílený.
400 Zadaný balíček je neplatný.
409 Balíček se zadaným ID a verzí již existuje.

Implementace serveru se liší ve stavovém kódu úspěchu vráceného při úspěšném nasdílení balíčku.

Odstranění balíčku

nuget.org interpretuje požadavek na odstranění balíčku jako "unlist". To znamená, že balíček je stále dostupný pro stávající uživatele balíčku, ale balíček se už nezobrazuje ve výsledcích hledání nebo ve webovém rozhraní. Další informace o tomto postupu najdete v zásadách Odstraněné balíčky . Ostatní implementace serveru mohou tento signál interpretovat jako pevný odstranění, obnovitelné odstranění nebo zrušení seznamu. Například NuGet.Server (implementace serveru podporující pouze starší rozhraní API V2) podporuje zpracování tohoto požadavku buď jako seznam, nebo pevné odstranění na základě možnosti konfigurace.

DELETE https://www.nuget.org/api/v2/package/{ID}/{VERSION}

Parametry požadavku

Název V Typ Požaduje se Notes
ID URL string ano ID balíčku k odstranění
VERZE URL string ano Verze balíčku, která se má odstranit
X-NuGet-ApiKey Hlavička string ano Například X-NuGet-ApiKey: {USER_API_KEY}

Response

Kód stavu Význam
204 Balíček byl odstraněn.
404 Žádný balíček se zadaným balíčkem ID a VERSION neexistuje

Opětovné zařazení balíčku

Pokud balíček není v seznamu, je možné tento balíček znovu zobrazit ve výsledcích hledání pomocí koncového bodu relist. Tento koncový bod má stejný tvar jako koncový bod delete (unlist), ale místo metody používá metodu POSTDELETE HTTP.

Pokud už je balíček uvedený, požadavek bude i nadále úspěšný.

POST https://www.nuget.org/api/v2/package/{ID}/{VERSION}

Parametry požadavku

Název V Typ Požaduje se Notes
ID URL string ano ID balíčku, který se má znovu vylistovat
VERZE URL string ano Verze balíčku, která se má znovu vylistovat
X-NuGet-ApiKey Hlavička string ano Například X-NuGet-ApiKey: {USER_API_KEY}

Response

Kód stavu Význam
200 Balíček je teď uvedený.
404 Žádný balíček se zadaným balíčkem ID a VERSION neexistuje