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 eski istemciler için hataya neden olmayan bir şekilde değişiklikler eklemesine olanak tanır.
Not
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 ve var olduklarında listelenir.
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.
İ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
Üst bilginin benzer semantiklere sahip olduğunu X-NuGet-Client-Version
ancak yalnızca resmi NuGet istemcisi tarafından kullanılmak üzere ayrıldığını unutmayın. Üçüncü taraf istemciler üst bilgi ve değeri kullanmalıdır X-NuGet-Protocol-Version
.
Gönderme protokollerinin kendisi kaynağın belgelerinde PackagePublish
açı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.
Bu API, nuget.org yazarın sahip olduğu bir paketi doğrulamak üzere bir verify-scope anahtarı almak için kullanılır.
POST api/v2/package/create-verification-key/{ID}/{VERSION}
Veri Akışı Adı | İçinde | Type | Zorunlu | Notlar |
---|---|---|---|---|
Kimlik | URL | Dize | evet | Kapsam anahtarını doğrulamanın istendiği paket kimliği |
VERSION | URL | Dize | hayır | Paket sürümü |
X-NuGet-ApiKey | Üst bilgi | string | evet | Örneğin X-NuGet-ApiKey: {USER_API_KEY} |
{
"Key": "{Verify scope key from nuget.org}",
"Expires": "{Date}"
}
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}
Veri Akışı Adı | İçinde | Type | Zorunlu | Notlar |
---|---|---|---|---|
Kimlik | URL | Dize | evet | Kapsam anahtarını doğrulamanın istendiği paket tanımlayıcısı |
VERSION | URL | Dize | hayır | Paket sürümü |
X-NuGet-ApiKey | Üst bilgi | string | evet | Örneğin X-NuGet-ApiKey: {VERIFY_SCOPE_KEY} |
Not
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.
Durum Kodu | Anlamı |
---|---|
200 | API anahtarı geçerli |
Kategori 403 | API anahtarı geçersiz veya pakete gönderme yetkisi yok |
404 | ve VERSION (isteğe bağlı) tarafından ID başvuruda bulunılan paket yok |