Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby korzystać z nuget.org, klienci muszą postępować zgodnie z pewnymi protokołami. Ponieważ te protokoły ciągle ewoluują, klienci muszą zidentyfikować wersję protokołu używaną podczas wywoływania określonych interfejsów API nuget.org. Dzięki temu nuget.org wprowadza zmiany w sposób niezakłócający działanie dla starych klientów.
Uwaga / Notatka
Interfejsy API opisane na tej stronie są specyficzne dla nuget.org i nie ma oczekiwań dotyczących innych implementacji serwera NuGet w celu wprowadzenia tych interfejsów API.
Aby uzyskać informacje na temat interfejsu API NuGet zaimplementowanego szeroko w ekosystemie NuGet, zobacz omówienie interfejsu API.
W tym temacie wymieniono różne protokoły, jak tylko powstają.
Protokół NuGet w wersji 4.1.0
Protokół 4.1.0 określa użycie kluczy zakresu weryfikacji w celu interakcji z usługami innymi niż nuget.org, aby zweryfikować pakiet na koncie nuget.org. Należy pamiętać, że 4.1.0 numer wersji jest nieprzezroczystym ciągiem, ale występuje zbieganie się z pierwszą wersją oficjalnego klienta NuGet, który obsługiwał ten protokół.
Walidacja gwarantuje, że utworzone przez użytkownika klucze interfejsu API są używane wyłącznie z usługą nuget.org, a weryfikacje lub walidacje z usług innej firmy są obsługiwane za pomocą jednorazowych kluczy do weryfikacji zakresu. Te klucze weryfikowania zakresu mogą służyć do sprawdzania, czy pakiet należy do określonego użytkownika (konta) na nuget.org.
Wymaganie klienta
Klienci muszą przekazać następujący nagłówek podczas wykonywania wywołań interfejsu API w celu wypychania pakietów do nuget.org:
X-NuGet-Protocol-Version: 4.1.0
Należy pamiętać, że X-NuGet-Client-Version nagłówek ma podobną semantykę, ale jest zarezerwowany tylko do użycia przez oficjalnego klienta NuGet. Klienci innych firm powinni używać nagłówka X-NuGet-Protocol-Version i wartości.
Sam protokół wypychania jest opisany w dokumentacji zasobuPackagePublish.
Jeśli klient wchodzi w interakcję z usługami zewnętrznymi i musi sprawdzić, czy pakiet należy do określonego użytkownika (konta), powinien użyć następującego protokołu i użyć kluczy weryfikowania zakresu, a nie kluczy interfejsu API z nuget.org.
Interfejs API do żądania klucza weryfikowania zakresu
Ten interfejs API służy do uzyskiwania klucza weryfikowania zakresu dla autora nuget.org w celu zweryfikowania pakietu należącego do niego/jej.
POST api/v2/package/create-verification-key/{ID}/{VERSION}
Parametry żądania
| Name | In | Typ | Required | Notatki |
|---|---|---|---|---|
| identyfikator | adres URL | ciąg | yes | Identyfikator pakietu, dla którego zażądano klucza zakresu weryfikacji |
| VERSION | adres URL | ciąg | no | Wersja pakietu |
| X-NuGet-ApiKey | Header | ciąg | yes | Na przykład X-NuGet-ApiKey: {USER_API_KEY} |
Odpowiedź
{
"Key": "{Verify scope key from nuget.org}",
"Expires": "{Date}"
}
Interfejs API do weryfikowania klucza zakresu
Ten interfejs API jest używany do walidacji klucza verify-scope dla pakietu należącego do autora nuget.org.
GET api/v2/verifykey/{ID}/{VERSION}
Parametry żądania
| Name | In | Typ | Required | Notatki |
|---|---|---|---|---|
| identyfikator | adres URL | ciąg | yes | Identyfikator pakietu, dla którego zażądano klucza zakresu weryfikacji |
| VERSION | adres URL | ciąg | no | Wersja pakietu |
| X-NuGet-ApiKey | Header | ciąg | yes | Na przykład X-NuGet-ApiKey: {VERIFY_SCOPE_KEY} |
Uwaga / Notatka
Klucz API do weryfikacji zakresu wygasa po upływie jednego dnia lub przy pierwszym użyciu, w zależności od tego, co nastąpi wcześniej.
Odpowiedź
| Kod stanu | Meaning |
|---|---|
| 200 | Klucz interfejsu API jest prawidłowy |
| 403 | Klucz interfejsu API jest nieprawidłowy lub nie ma autoryzacji do wypychania do pakietu |
| 404 | Pakiet wskazany przez ID i VERSION (opcjonalnie) nie istnieje |