Aracılığıyla paylaş


Eki Değiştirme

Ek kaynağını değiştirmenin iki yolu vardır: Medya içeriğini AtomPub Protokolü'nde olduğu gibi Azure Cosmos DB'ye yerleştirin veya yalnızca ek meta verilerini harici olarak depolanan medyaya yerleştirin.

İlki, cosmos DB hesabınızın altındaki sağlanan ek depolama alanında depolamak için gövde yüküne ham medya yerleştirmektir. Geliştiriciler bu tür ekleri değiştirmek için PUT gövdesi olarak ham eki (video, ses, dosya, blob vb.) içerir. İki üst bilgi ayarlanmalıdır: Content-Type ve Slug. Content-Type üst bilgisi ekin MIME türüne, Slug üst bilgisi ise ekin adına ayarlanır.

Ek kaynağını değiştirmenin ikinci yolu, ekin türüne ve medya bağlantısına dikkat ederek ek kaynağı özelliklerini PUT yapmaktır. İlk ek kaynağı türünden farklı olarak, content-type ve Slug üst bilgileri ayarlanmaz, ham medya istek yükünün bir parçası değildir.

İstek

Yöntem İstek URI'si Description
PUT {databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-name}/attachments/{att-name} https:// {databaseaccount}, aboneliğiniz altında oluşturulan Cosmos DB hesabının adıdır. {db-id} değeri, sistem tarafından oluşturulan kimlik (rid) değil, veritabanının kullanıcı tarafından oluşturulan adı/kimliğidir. {coll-id} değeri, belgenin içinde bulunduğu koleksiyonun adıdır. {doc-name} değeri, ekle ilişkilendirilmiş belgenin adıdır. {att-name} değeri değiştirilecek ekin adıdır.

Üst Bilgiler

Tüm Cosmos DB istekleri tarafından kullanılan üst bilgiler için bkz. Yaygın Azure Cosmos DB REST isteği üst bilgileri.

Üst bilgi Gerekli Tür Description
Başlık İsteğe Bağlı Dize Ekin adı. Yalnızca ham medya Cosmos DB ek depolama alanına gönderildiğinde gereklidir. Daha fazla ayrıntı için bkz. AtomPub Protokolü.

Gövde

Özellik Gerekli Tür Description
id İsteğe Bağlı Dize Ham medya eklenirken ayarlanması gerekmez. Bu bir kullanıcı ayarlanabilir özelliğidir. Eki tanımlayan benzersiz addır, yani aynı kimliği paylaşan iki ek yoktur. Kimlik 255 karakteri aşmamalıdır.
Contenttype İsteğe Bağlı Dize Ham medya eklenirken ayarlanması gerekmez. Bu bir kullanıcı ayarlanabilir özelliğidir. Ekin içerik türünü not eder. Ek bitlerini gövde olarak gönderirken Cosmos DB, contentType değerini Content-Type üst bilgisinde ayarlanan türe ayarlar.
Medya İsteğe Bağlı Dize Ham medya eklenirken ayarlanması gerekmez. Bu, ekin bulunduğu URL bağlantısı veya dosya yoludur.
{  
    "id": "image_id_2",  
    "contentType": "image/jpg",  
    "media": "www.microsoft.com"  
}  
  

Yanıt

Üst Bilgiler

Tüm Cosmos DB yanıtları tarafından döndürülen üst bilgiler için bkz. Genel Azure Cosmos DB REST yanıt üst bilgileri.

Durum kodları

Aşağıdaki tabloda bu işlem tarafından döndürülen genel durum kodları listelenmektedir. Durum kodlarının tam listesi için bkz. HTTP Durum Kodları.

HTTP durum kodu Açıklama
200 Tamam İşlem başarılı oldu.
400 Hatalı İstek JSON gövdesi geçersiz. Eksik küme ayraçlarını veya tırnakları denetleyin.
404 Bulunamadı Değiştirilecek ek artık bir kaynak değil, yani ek silinmiş.
409 Çakışma Ek için sağlanan kimlik var olan bir ek tarafından alındı.
413 Varlık Çok Büyük İstekteki belge boyutu, istekteki izin verilebilen belge boyutunu aştı.

Gövde

Özellik Açıklama
_Kurtulmak Sistem tarafından oluşturulan bir özelliktir. Kaynak kimliği (_rid), kaynak modelinde kaynak yığını başına da hiyerarşik olan benzersiz bir tanımlayıcıdır. Ek kaynağının yerleşimi ve gezintisi için dahili olarak kullanılır.
_Ts Sistem tarafından oluşturulan bir özelliktir. Kaynağın son güncelleştirilmiş zaman damgasını belirtir. Değer bir zaman damgasıdır.
_Kendini Sistem tarafından oluşturulan bir özelliktir. Kaynak için benzersiz adreslenebilir URI'dir.
_Etag İyimser eşzamanlılık denetimi için gereken kaynak etag'ini belirten sistem tarafından oluşturulan bir özelliktir.
{  
    "id": "image_id_2",  
    "contentType": "image/jpg",  
    "media": "www.microsoft.com",  
    "_rid": "Sl8fALN4sw4CAAAAAAAAAOnTcEc=",  
    "_ts": 1449606442,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/docs\/Sl8fALN4sw4CAAAAAAAAAA==\/attachments\/Sl8fALN4sw4CAAAAAAAAAOnTcEc=",  
    "_etag": "\"0600abc2-0000-0000-0000-56673d2a0000\""  
}  
  

Örnek

PUT https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/docs/c3bb1fef-fcb1-56e3-0389-f88583c3ce0d/attachments/image_id HTTP/1.1  
x-ms-session-token: 19  
x-ms-date: Tue, 08 Dec 2015 20:27:23 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3dKQWBkCCXyJ66fwBe9%2b%2b7oN7CSlIkMMyFEgimGDPawCs%3d  
Cache-Control: no-cache  
User-Agent: contoso/1.0  
x-ms-version: 2015-08-06  
Accept: application/json  
Host: contosomarketing.documents.azure.com  
Cookie: x-ms-session-token=19  
Content-Length: 281  
Expect: 100-continue  
  
{  
    "id": "image_id_2",  
    "contentType": "image/jpg",  
    "media": "www.microsoft.com"  
}  
  
HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Content-Type: application/json  
Content-Location: https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/docs/c3bb1fef-fcb1-56e3-0389-f88583c3ce0d/attachments/image_id  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Sun, 29 Nov 2015 19:20:18.154 GMT  
etag: "0600abc2-0000-0000-0000-56673d2a0000"  
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;  
x-ms-resource-usage: documentSize=0;documentsSize=289;collectionSize=367;  
x-ms-schemaversion: 1.1  
x-ms-alt-content-path: dbs/volcanodb/colls/volcano1/docs/c3bb1fef-fcb1-56e3-0389-f88583c3ce0d  
x-ms-content-path: Sl8fALN4sw4CAAAAAAAAAA==  
x-ms-quorum-acked-lsn: 19  
x-ms-session-token: 20  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 9.9  
x-ms-serviceversion: version=1.5.57.3  
x-ms-activity-id: 8b8be54a-3c7e-4484-9f65-3a3d778347cc  
Set-Cookie: x-ms-session-token=20; Domain=contosomarketing.documents.azure.com; Path=/dbs/volcanodb/colls/volcano1  
x-ms-gatewayversion: version=1.5.57.3  
Date: Tue, 08 Dec 2015 20:27:24 GMT  
Content-Length: 299  
  
{  
    "id": "image_id_2",  
    "contentType": "image/jpg",  
    "media": "www.microsoft.com",  
    "_rid": "Sl8fALN4sw4CAAAAAAAAAOnTcEc=",  
    "_ts": 1449606442,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/docs\/Sl8fALN4sw4CAAAAAAAAAA==\/attachments\/Sl8fALN4sw4CAAAAAAAAAOnTcEc=",  
    "_etag": "\"0600abc2-0000-0000-0000-56673d2a0000\""  
}  
  

Ayrıca Bkz.