Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Clients moeten bepaalde protocollen volgen om te communiceren met nuget.org. Omdat deze protocollen zich blijven ontwikkelen, moeten clients de protocolversie identificeren die ze gebruiken bij het aanroepen van specifieke nuget.org API's. Hierdoor kunnen nuget.org wijzigingen op een niet-brekende manier introduceren voor de oude clients.
Opmerking
De API's die op deze pagina worden beschreven, zijn specifiek voor nuget.org en er is geen verwachting dat andere NuGet-serverimplementaties deze API's introduceren.
Zie het API-overzicht voor informatie over de NuGet-API die breed is geïmplementeerd in het NuGet-ecosysteem.
In dit onderwerp worden verschillende protocollen vermeld als en wanneer ze tot stand komen.
NuGet-protocolversie 4.1.0
Het protocol 4.1.0 specificeert het gebruik van verificatiesleutels voor interactie met andere services dan nuget.org om een pakket te valideren op basis van een nuget.org-account.
4.1.0 Het versienummer is een ondoorzichtige tekenreeks, maar valt samen met de eerste versie van de officiële NuGet-client die dit protocol ondersteunt.
Validatie zorgt ervoor dat de door de gebruiker gemaakte API-sleutels alleen worden gebruikt met nuget.org en dat andere verificatie of validatie van een service van derden wordt verwerkt via een eenmalig gebruik van verificatiebereiksleutels. Deze verificatiebereiksleutels kunnen worden gebruikt om te valideren dat het pakket deel uitmaakt van een bepaalde gebruiker (account) op nuget.org.
Clientvereiste
Clients moeten de volgende header doorgeven wanneer ze API-aanroepen uitvoeren om pakketten naar nuget.org te pushen :
X-NuGet-Protocol-Version: 4.1.0
Houd er rekening mee dat de X-NuGet-Client-Version header vergelijkbare semantiek heeft, maar is gereserveerd om alleen te worden gebruikt door de officiële NuGet-client. Clients van derden moeten de X-NuGet-Protocol-Version header en waarde gebruiken.
Het pushprotocol zelf wordt beschreven in de documentatie voor de PackagePublish resource.
Als een client communiceert met externe services en moet controleren of een pakket deel uitmaakt van een bepaalde gebruiker (account), moet deze het volgende protocol gebruiken en de verificatiebereiksleutels gebruiken en niet de API-sleutels uit nuget.org.
API voor het aanvragen van een verificatiebereiksleutel
Deze API wordt gebruikt om een verificatiebereiksleutel op te halen voor een nuget.org auteur om een pakket te valideren dat eigendom is van hem/haar.
POST api/v2/package/create-verification-key/{ID}/{VERSION}
Aanvraagparameters
| Naam | In | Typologie | Verplicht | Opmerkingen |
|---|---|---|---|---|
| ID-kaart | URL | touw | yes | De pakketidentificatie waarvoor de verificatiesleutel is aangevraagd |
| VERSION | URL | touw | no | De pakketversie |
| X-NuGet-ApiKey | Header | touw | yes | Bijvoorbeeld X-NuGet-ApiKey: {USER_API_KEY} |
Reactie
{
"Key": "{Verify scope key from nuget.org}",
"Expires": "{Date}"
}
API voor het verifiëren van de bereiksleutel
Deze API wordt gebruikt om een verificatiebereiksleutel te valideren voor het pakket dat eigendom is van de nuget.org auteur.
GET api/v2/verifykey/{ID}/{VERSION}
Aanvraagparameters
| Naam | In | Typologie | Verplicht | Opmerkingen |
|---|---|---|---|---|
| ID-kaart | URL | touw | yes | De pakketidentificatie waarvoor de verifiëringsbereiksleutel is aangevraagd |
| VERSION | URL | touw | no | De pakketversie |
| X-NuGet-ApiKey | Header | touw | yes | Bijvoorbeeld X-NuGet-ApiKey: {VERIFY_SCOPE_KEY} |
Opmerking
Deze verificatie-scope API-sleutel verloopt binnen een dag of bij het eerste gebruik, afhankelijk van wat zich het eerst voordoet.
Reactie
| Statuscode | Meaning |
|---|---|
| 200 | De API-sleutel is geldig |
| 403 | De API-sleutel is ongeldig of niet geautoriseerd om gegevens naar het pakket te verzenden. |
| 404 | Het pakket waarnaar wordt verwezen ID en VERSION (optioneel) bestaat niet |