Aracılığıyla paylaş


nuget.org protokolleri

nuget.org ile etkileşime geçmek için istemcilerin belirli protokolleri izlemesi gerekir. Bu protokoller gelişmeye devam ettiğinden istemcilerin belirli nuget.org API'leri çağırırken kullandıkları protokol sürümünü tanımlaması gerekir. Bu, nuget.org'un eski istemciler için uyumlu bir şekilde değişiklikler yapmasına olanak tanır.

Uyarı

Bu sayfada belgelenen API'ler nuget.org özgüdür ve diğer NuGet sunucu uygulamalarının bu API'leri tanıtması için bir beklenti yoktur.

NuGet ekosistemi genelinde yaygın olarak uygulanan NuGet API'si hakkında bilgi için bkz. API'ye genel bakış.

Bu konu başlığı altında, çeşitli protokoller geliştikçe ve hayata geçtikçe listelenir.

NuGet protokolü sürüm 4.1.0

4.1.0 protokolü, bir paketi nuget.org hesabıyla doğrulamak üzere nuget.org dışındaki hizmetlerle etkileşime geçmek için verify-scope anahtarlarının kullanımını belirtir. Sürüm numarasının 4.1.0 opak bir dize olduğunu ancak bu protokolü destekleyen resmi NuGet istemcisinin ilk sürümüyle aynı olduğunu unutmayın.

Doğrulama, kullanıcı tarafından oluşturulan API anahtarlarının yalnızca nuget.org ile kullanılmasını ve üçüncü taraf bir hizmetten yapılan diğer doğrulama veya doğrulamanın tek seferlik kullanımlı verify-scope anahtarları aracılığıyla işlenmesini sağlar. Bu doğrulama kapsamı anahtarları, paketin nuget.org belirli bir kullanıcıya (hesaba) ait olduğunu doğrulamak için kullanılabilir.

İstemci gereksinimi

İstemcilerin paketleri nuget.org göndermek için API çağrıları yaptıklarında aşağıdaki üst bilgiyi geçirmeleri gerekir:

X-NuGet-Protocol-Version: 4.1.0

Başlığın X-NuGet-Client-Version benzer semantiklere sahip olduğunu ancak yalnızca resmi NuGet istemcisi tarafından kullanılması için ayrıldığını unutmayın. Üçüncü taraf istemciler X-NuGet-Protocol-Version başlığını ve değerini kullanmalıdır.

Gönderme protokollerinin kendisi kaynağın belgelerinde PackagePublishaçıklanmıştır.

İstemci dış hizmetlerle etkileşim kurarsa ve paketin belirli bir kullanıcıya (hesaba) ait olup olmadığını doğrulaması gerekiyorsa, nuget.org API anahtarlarını değil aşağıdaki protokolü ve verify-scope anahtarlarını kullanmalıdır.

Doğrulama kapsamı anahtarı istemek için API

Bu API, nuget.org yazarı tarafından sahip olunan bir paketi doğrulamak için bir verify-scope anahtarı almak amacıyla kullanılır.

POST api/v2/package/create-verification-key/{ID}/{VERSION}

İstek parametreleri

İsim In Türü Gerekli Notes
Kimlik URL String yes Doğrulama kapsam anahtarının talep edildiği paket kimliği
VERSION URL String no Paket sürümü
X-NuGet-ApiKey Header String yes Örneğin, X-NuGet-ApiKey: {USER_API_KEY}

Yanıt

{
    "Key": "{Verify scope key from nuget.org}",
    "Expires": "{Date}"
}

Kapsam anahtarını doğrulama API'si

Bu API, nuget.org yazarının sahip olduğu paket için bir verify-scope anahtarını doğrulamak için kullanılır.

GET api/v2/verifykey/{ID}/{VERSION}

İstek parametreleri

İsim In Türü Gerekli Notes
Kimlik URL String yes Doğrulama kapsam anahtarı istenen paket tanımlayıcısı
VERSION URL String no Paket sürümü
X-NuGet-ApiKey Header String yes Örneğin, X-NuGet-ApiKey: {VERIFY_SCOPE_KEY}

Uyarı

Bu doğrulama kapsamı API anahtarının süresi bir gün içinde veya ilk kullanımda (hangisi önce gerçekleşirse) sona erer.

Yanıt

Durum Kodu Meaning
200 API anahtarı geçerli
403 API anahtarı geçersiz veya pakete yükleme yetkisi yok
404 ID ve (isteğe bağlı VERSION) tarafından bahsedilen paket mevcut değil