Here является официальной документацией NuGet V3 API. API состоит из нескольких протоколов, в том числе:
- Service Index - используется клиентом для обнаружения услуг NuGet
- Search Service - используется клиентами для поиска NuGet пакетов
- Registration - это JSON -LD, которая хранит метаданные пакетов. Это включает в себя содержимое пакетов, зависимости, описания и т. Д.
- "PackageBaseAddress" - Магазин, содержащий фактические пакеты и их файлы манифеста (
nuspec
).
Например, скажем, вы хотите загрузить пакет "Newtonsoft JSon.":
- Получить индекс службы: `ПОЛУЧИТЬ https://api.nuget.org/v3/index.json
ответ содержит адрес из PackageBaseAddress (иначе, как плоский контейнер, так как он является иерархическим и не плоским :)):
{
"@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"
},
- Используйте uri, предоставленный @id, в качестве базового uri для перечисления версий желаемого пакета:
GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/index.json
, обратите внимание, что этот uri может быть изменен и не является частью API
- Используйте тот же базовый URI для загрузки пакета:
GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.6.0.4.nupkg
Вы также можете захотеть взглянуть на NuGet client. Исходный код клиента: here; вам нужно начать с NuGet.CommandLine project и пройтись по стеку.
Searching ссылки внеплощадочной явно не по теме, но когда вы найдете информацию рассмотреть вопрос об обновлении вик тега (http://stackoverflow.com/tags/nuget/info) –
Очень вероятно, что ваша единственная надежда - это код C#, https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Core/NuGet.Protocol.Core.v3 –
Вежливый запрос на документацию https://github.com/NuGet/Home/issues/4062 –