Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Idag finns det några sätt att få den senaste versionen av nuget.exe på din dator på ett skriptbart sätt. Du kan till exempel ladda ned och extrahera NuGet.CommandLine paketet från nuget.org. Detta har viss komplexitet eftersom det antingen kräver att du redan har nuget.exe (för nuget.exe install) eller så måste du packa upp .nupkg med hjälp av ett grundläggande packa upp verktyg och hitta binärfilen inuti.
Om du redan har nuget.exekan du också använda nuget.exe update -self, men det kräver också att du har en befintlig kopia av nuget.exe. Den här metoden uppdaterar dig även till den senaste versionen. Det tillåter inte användning av en specifik version.
Slutpunkten tools.json är tillgänglig för att både lösa bootstrapping-problemet och för att ge kontroll över den version av nuget.exe som du laddar ned. Detta kan användas i CI/CD-miljöer eller i anpassade skript för att identifiera och ladda ned alla versioner av nuget.exe.
Slutpunkten tools.json kan hämtas med en oautentiserad HTTP-begäran (t.ex. Invoke-WebRequest i PowerShell eller wget). Den kan parsas med hjälp av en JSON-deserializer och efterföljande nuget.exe nedladdnings-URL:er kan också hämtas med oautentiserade HTTP-begäranden.
Slutpunkten kan hämtas med hjälp av GET metoden:
GET https://dist.nuget.org/tools.json
JSON-schemat för slutpunkten är tillgängligt här:
GET https://dist.nuget.org/tools.schema.json
Svar
Svaret är ett JSON-dokument som innehåller alla tillgängliga versioner av nuget.exe.
JSON-rotobjektet har följande egenskap:
| Namn | Typ | Krävs |
|---|---|---|
| nuget.exe | en matris med objekt | yes |
Varje objekt i matrisen nuget.exe har följande egenskaper:
| Namn | Typ | Krävs | Noteringar |
|---|---|---|---|
| version | snöre | yes | En SemVer 2.0.0-sträng |
| URL | snöre | yes | En absolut URL för att ladda ned den här versionen av nuget.exe |
| stage | snöre | yes | En enumssträng |
| uppladdad | snöre | yes | En ungefärlig ISO 8601-tidsstämpel för när versionen gjordes tillgänglig |
Objekten i matrisen sorteras i fallande ordning, SemVer 2.0.0. Den här garantin är avsedd att minska belastningen för en klient som är intresserad av högsta versionsnummer. Det innebär dock att listan inte sorteras i kronologisk ordning. Om till exempel en lägre huvudversion betjänas vid ett senare datum än en högre huvudversion visas inte den här versionen överst i listan. Om du vill ha den senaste versionen baserad på tidsstämpeln, sortera helt enkelt listan efter uploaded-strängen. Detta fungerar eftersom tidsstämpeln uploaded är i ISO 8601-format som kan sorteras kronologiskt med hjälp av en lexikal sortering (dvs. en enkel strängsortering).
Egenskapen stage anger hur granskad den här versionen av verktyget är.
| Etapp | Meaning |
|---|---|
| EarlyAccessPreview | Inte synligt ännu på nedladdningswebbsidan och bör valideras av partner |
| Släppt | Tillgänglig på nedladdningswebbplatsen men rekommenderas ännu inte för bred förbrukning |
| Släppt och Välsignat | Tillgänglig på nedladdningswebbplatsen och rekommenderas för förbrukning |
En enkel metod för att ha den senaste rekommenderade versionen är att ta den första versionen i listan som har stage värdet ReleasedAndBlessed. Detta fungerar eftersom versionerna sorteras i SemVer 2.0.0-ordning.
Paketet NuGet.CommandLine på nuget.org uppdateras vanligtvis bara med ReleasedAndBlessed versioner.
Exempelbegäran
GET https://dist.nuget.org/tools.json
Exempelsvar
{
"nuget.exe": [
{
"version": "4.8.0-preview3",
"url": "https://dist.nuget.org/win-x86-commandline/v4.8.0-preview3/nuget.exe",
"stage": "EarlyAccessPreview",
"uploaded": "2018-07-06T23:00:00.0000000Z"
},
{
"version": "4.7.1",
"url": "https://dist.nuget.org/win-x86-commandline/v4.7.1/nuget.exe",
"stage": "ReleasedAndBlessed",
"uploaded": "2018-08-10T23:00:00.0000000Z"
},
{
"version": "4.6.1",
"url": "https://dist.nuget.org/win-x86-commandline/v4.6.1/nuget.exe",
"stage": "Released",
"uploaded": "2018-03-22T23:00:00.0000000Z"
},
{
"version": "3.5.0",
"url": "https://dist.nuget.org/win-x86-commandline/v3.5.0/nuget.exe",
"stage": "ReleasedAndBlessed",
"uploaded": "2016-12-19T15:30:00.0000000-08:00"
},
{
"version": "2.8.6",
"url": "https://dist.nuget.org/win-x86-commandline/v2.8.6/nuget.exe",
"stage": "ReleasedAndBlessed",
"uploaded": "2015-09-01T12:30:00.0000000-07:00"
}
]
}