Gönder ve Sil
NuGet V3 API'sini kullanarak paketleri göndermek, silmek (veya sunucu uygulamasına bağlı olarak listeden silmek) ve yeniden listelemek mümkündür. Bu işlemler hizmet dizininde bulunan kaynağı temel alırPackagePublish
.
Aşağıdaki @type
değer kullanılır:
@type Değer | Notlar |
---|---|
PackagePublish/2.0.0 | İlk sürüm |
Aşağıdaki API'lerin temel URL'si, paket kaynağının @id
hizmet dizinindeki kaynağın PackagePublish/2.0.0
özelliğinin değeridir. Aşağıdaki belgeler için nuget.org'un URL'si kullanılır. Hizmet dizininde bulunan değer için @id
yer tutucu olarak düşününhttps://www.nuget.org/api/v2/package
.
Protokol aynı olduğundan bu URL'nin eski V2 gönderme uç noktasıyla aynı konumu işaret ettiğini unutmayın.
PUT
ve POST
DELETE
HTTP yöntemleri bu kaynak tarafından desteklenir. Her uç noktada hangi yöntemlerin desteklendiği için aşağıya bakın.
Not
nuget.org, gönderme uç noktasıyla etkileşime yönelik ek gereksinimlere sahiptir.
nuget.org aşağıdaki API'yi kullanarak yeni paketler göndermeyi destekler. Sağlanan kimliğe ve sürüme sahip paket zaten varsa, nuget.org göndermeyi reddeder. Diğer paket kaynakları, mevcut bir paketin değiştirilmesini desteklemektedir.
PUT https://www.nuget.org/api/v2/package
Veri Akışı Adı | İçinde | Type | Zorunlu | Notlar |
---|---|---|---|---|
X-NuGet-ApiKey | Üst bilgi | string | evet | Örneğin X-NuGet-ApiKey: {USER_API_KEY} |
API anahtarı, kullanıcı tarafından paket kaynağından alınan ve istemcide yapılandırılan opak bir dizedir. Belirli bir dize biçimi zorunlu değildir, ancak API anahtarının uzunluğu HTTP üst bilgi değerleri için makul bir boyutu aşmamalıdır.
İstek gövdesi aşağıdaki biçimde gelmelidir:
İstek üst bilgisidir Content-Type
multipart/form-data
ve istek gövdesindeki ilk öğe, gönderilen .nupkg'ın ham baytlarıdır. Çok parçalı gövdedeki sonraki öğeler yoksayılır. Dosya adı veya çok bölümlü öğelerin diğer üst bilgileri yoksayılır.
Durum Kodu | Anlamı |
---|---|
201, 202 | Paket başarıyla gönderildi |
400 | Sağlanan paket geçersiz |
409 | Sağlanan kimliğe ve sürüme sahip bir paket zaten var |
Sunucu uygulamaları, bir paket başarıyla gönderildiğinde döndürülen başarı durum koduna göre değişir.
nuget.org paket silme isteğini "listeden çıkar" olarak yorumlar. Bu, paketin mevcut tüketicileri için paketin hala kullanılabildiğini ancak paketin artık arama sonuçlarında veya web arabiriminde görünmediğini gösterir. Bu uygulama hakkında daha fazla bilgi için Silinmiş Paketler ilkesine bakın. Diğer sunucu uygulamaları bu sinyali sabit silme, geçici silme veya listeden kaldırma olarak yorumlamak için ücretsizdir. Örneğin, NuGet.Server (yalnızca eski V2 API'sini destekleyen bir sunucu uygulaması), bu isteğin bir yapılandırma seçeneğine göre liste dışı veya sabit silme olarak işlenmesini destekler.
DELETE https://www.nuget.org/api/v2/package/{ID}/{VERSION}
Veri Akışı Adı | İçinde | Type | Zorunlu | Notlar |
---|---|---|---|---|
Kimlik | URL | Dize | evet | Silinecek paketin kimliği |
VERSION | URL | Dize | evet | Silinecek paketin sürümü |
X-NuGet-ApiKey | Üst bilgi | string | evet | Örneğin X-NuGet-ApiKey: {USER_API_KEY} |
Durum Kodu | Anlamı |
---|---|
204 | Paket silindi |
404 | Sağlanan ID ve VERSION var olan paket yok |
Bir paket listelenmemişse, "yeniden listeleme" uç noktasını kullanarak bu paketi arama sonuçlarında bir kez daha görünür hale getirmek mümkündür. Bu uç nokta silme (liste dışı) uç noktasıyla aynı şekle sahiptir ancak yöntemi yerine DELETE
HTTP yöntemini kullanırPOST
.
Paket zaten listelenmişse istek yine de başarılı olur.
POST https://www.nuget.org/api/v2/package/{ID}/{VERSION}
Veri Akışı Adı | İçinde | Type | Zorunlu | Notlar |
---|---|---|---|---|
Kimlik | URL | Dize | evet | Yeniden liste yapılacak paketin kimliği |
VERSION | URL | Dize | evet | Yeniden liste yapılacak paketin sürümü |
X-NuGet-ApiKey | Üst bilgi | string | evet | Örneğin X-NuGet-ApiKey: {USER_API_KEY} |
Durum Kodu | Anlamı |
---|---|
200 | Paket artık listelenmiştir |
404 | Sağlanan ID ve VERSION var olan paket yok |