2017-08-11 110 views
1

當我嘗試從nodejs應用程序中的DocumentDb中刪除文檔時,它會發出以下錯誤請求錯誤。 {「code」:「BadRequest」,「message」:「消息:{\」Errors \「:[\」x-ms-partitionkey頭中提供的分區鍵的組件數量少於集合中定義的組件的數量。「]} \ r \ nActivityId:fe385556-c91b-49a6-88ca-728a807b64ad,請求URI:/ apps/63e70998-1c00-470e-8093-b4ef0dac16b1/services/2f865af8-4b67-4b6f-9919-9caf5a78d60c/partitions/75008c63-10a3-4ad3-85b7-d22883819270 /副本/ 131467476052794282p「}嘗試從DocumentDb中刪除文檔時出現錯誤的請求錯誤

DBHandler.prototype.removeItem =函數(項目,回調) {

this.client.deleteDocument(item._self, item, function(err, doc){ 
    if (err) 
    { 
     LogUtils.error("DBHandler.removeItem "+err.body); 
    } 
    else 
    { 
     callback(null, "success remove Item"); 
    } 
}); 

}

回答

2

爲了刪除分區集合中的文檔,您必須在請求選項中包含該文檔的分區鍵值。

請改變你的代碼如下所示:

DBHandler.prototype.removeItem = function(item, callback) { 
    var options = { 
    partitionKey: [your document's partition key value] 
    }; 
    this.client.deleteDocument(item._self, options, function(err, doc){ 
     if (err) 
     { 
      LogUtils.error("DBHandler.removeItem "+err.body); 
     } 
     else 
     { 
      callback(null, "success remove Item"); 
     } 
    }); 
} 
相關問題