Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Heute gibt es einige Möglichkeiten, die neueste Version von nuget.exe auf Ihrem Computer in skriptbarer Weise zu erhalten. Sie können beispielsweise das NuGet.CommandLine Paket aus nuget.org herunterladen und extrahieren. Dies hat einige Komplexität, da sie entweder erfordert, dass Sie bereits über nuget.exe (für nuget.exe install) verfügen, oder Sie müssen das nupkg mit einem einfachen Entpacktool entpacken und die Binärdatei innerhalb finden.
Wenn Sie bereits über nuget.exeverfügen, können Sie dies auch verwenden nuget.exe update -self. Dies erfordert jedoch auch eine vorhandene Kopie von nuget.exe. Dieser Ansatz aktualisiert Sie auch auf die neueste Version. Die Verwendung einer bestimmten Version ist nicht zulässig.
Der tools.json Endpunkt ist verfügbar, um das Bootstrapping-Problem zu lösen und die Kontrolle über die Version von nuget.exe zu geben, die Sie herunterladen. Dies kann in CI/CD-Umgebungen oder in benutzerdefinierten Skripts verwendet werden, um jede veröffentlichte Version von nuget.exezu ermitteln und herunterzuladen.
Der tools.json Endpunkt kann mithilfe einer nicht authentifizierten HTTP-Anforderung abgerufen werden (z. B. Invoke-WebRequest in PowerShell oder wget). Sie kann mithilfe eines JSON-Deserializers analysiert werden und nachfolgende nuget.exe Download-URLs können auch mithilfe nicht authentifizierter HTTP-Anforderungen abgerufen werden.
Der Endpunkt kann mithilfe der GET Methode abgerufen werden:
GET https://dist.nuget.org/tools.json
Das JSON-Schema für den Endpunkt ist hier verfügbar:
GET https://dist.nuget.org/tools.schema.json
Antwort
Die Antwort ist ein JSON-Dokument, das alle verfügbaren Versionen von nuget.exeenthält.
Das JSON-Stammobjekt weist die folgende Eigenschaft auf:
| Name | Typ | Erforderlich |
|---|---|---|
| nuget.exe | Array von Objekten | ja |
Jedes Objekt im nuget.exe Array weist die folgenden Eigenschaften auf:
| Name | Typ | Erforderlich | Hinweise |
|---|---|---|---|
| Ausgabe | Schnur | ja | Eine SemVer 2.0.0-Zeichenfolge |
| URL | Schnur | ja | Eine absolute URL zum Herunterladen dieser Version von nuget.exe |
| stage | Schnur | ja | Ein Enum-String |
| hochgeladen | Schnur | ja | Ein ungefährer ISO 8601-Zeitstempel, zu dem die Version verfügbar gemacht wurde |
Die Elemente im Array werden in absteigender Reihenfolge gemäß SemVer 2.0.0 sortiert. Diese Garantie soll die Belastung eines Kunden reduzieren, der an der höchsten Versionsnummer interessiert ist. Dies bedeutet jedoch, dass die Liste nicht in chronologischer Reihenfolge sortiert ist. Wenn beispielsweise eine niedrigere Hauptversion zu einem späteren Zeitpunkt als eine höhere Hauptversion gewartet wird, wird diese gewartete Version nicht am Anfang der Liste angezeigt. Wenn Sie die neueste Version nach Zeitstempel veröffentlichen möchten, sortieren Sie einfach das Array nach der uploaded Zeichenfolge. Dies funktioniert, da sich der uploaded Zeitstempel im ISO 8601-Format befindet, das chronologisch mithilfe einer lexikographischen Sortierung (d. h. einer einfachen Zeichenfolgensortierung) sortiert werden kann.
Die stage Eigenschaft gibt an, wie diese Version des Tools überprüft wird.
| Etappe | Bedeutung |
|---|---|
| Frühzugangs-Vorschau | Noch nicht auf der Download-Webseite sichtbar und müssen von Partnern überprüft werden. |
| Veröffentlicht | Verfügbar auf der Download-Website, wird jedoch noch nicht für den weit verbreiteten Verbrauch empfohlen |
| VeröffentlichtUndGesegnet | Verfügbar auf der Downloadwebsite und wird für den Verbrauch empfohlen. |
Ein einfacher Ansatz für die neueste, empfohlene Version besteht darin, die erste Version in der Liste zu verwenden, die den stage-Wert von ReleasedAndBlessed hat. Dies funktioniert, da die Versionen nach der SemVer 2.0.0 Spezifikation sortiert sind.
Das Paket auf nuget.org wird in der Regel nur mit ReleasedAndBlessed Versionen aktualisiert.
Musteranforderung
GET https://dist.nuget.org/tools.json
Beispielantwort
{
"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"
}
]
}