Here è la documentazione ufficiale di NuGet V3 API. L'API è composto da più protocolli, tra cui:
- Il Service Index - utilizzato dal client per scoprire i servizi Nuget
- Il Search Service - utilizzato dai clienti per cercare i pacchetti Nuget
- Il Registration - A JSON Struttura basata su -LD che memorizza i metadati dei pacchetti. Questo include il contenuto dei pacchetti, le dipendenze, le descrizioni, ecc ...
- Il "PackageBaseAddress" - Il negozio che contiene i pacchetti effettivi e i loro file manifest (
nuspec
).
Per esempio, diciamo che si voleva scaricare il pacchetto "Newtonsoft JSON.":
- ottenere l'indice di servizio: `GET https://api.nuget.org/v3/index.json
La risposta contiene l'indirizzo del PackageBaseAddress (aka, erroneamente come contenitore piatto, poiché è gerarchico e non piatto :)):
{
"@id": "https://api.nuget.org/v3-flatcontainer/",
"@type": "PackageBaseAddress/3.0.0",
"comment": "Base URL of Azure storage where NuGet package registration info for DNX is stored, in the format https://api.nuget.org/v3-flatcontainer/{id-lower}/{version-lower}.{version-lower}.nupkg"
},
- Utilizzare l'uri fornito da @id come base uri per elencare le versioni del pacchetto desiderato:
GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/index.json
, notare che questo uri è soggetto a modifiche e non fa parte dell'API
- Utilizzare lo stesso URI di base per scaricare un pacchetto:
GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.6.0.4.nupkg
Si consiglia inoltre di guardare il NuGet client. Il codice sorgente del client è here; ti consigliamo di iniziare dallo NuGet.CommandLine project e camminare fino in fondo allo stack.
fonte
2016-01-23 04:42:30
Ricerca di collegamenti off-site è ovviamente off-topic, ma quando si trova informazioni in considerazione l'aggiornamento wiki del tag (http://stackoverflow.com/tags/nuget/info) –
È molto probabile che la tua unica speranza sia il codice C#, https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Core/NuGet.Protocol.Core.v3 –
Richiesta gentile di documentazione https://github.com/NuGet/Home/issues/4062 –