我正在使用节点sdk作为文档数据库,我可以使用以下代码成功列出集合中的所有文档:
collectionUrl = "dbs/dbName/colls/Membership"
this.client.readDocuments(this.collectionUrl).toArray(callback)
但是当我尝试使用以下代码查询数据时,它失败了:
querySpec = {
query: 'SELECT * FROM root r '
};
this.client.queryCollections(this.collectionUrl,this.querySpec).toArray(callback)
错误消息是:
body:"{"code":"BadRequest","message":"Request url is invalid.\r\nActivityId: 532e52d2-7e97-41d4-8b07-a5fb19de88da"}"
code:400
知道为什么这是我执行查询所需要做的事情吗?
答案 0 :(得分:2)
我发现您使用queryCollections
函数来查询文档。请尝试使用:
而是this.client.queryDocuments(this.collectionUrl,this.querySpec).toArray(callback)
。
如果您想在数据库中查询collections
,请使用databaseLink
代替collectionUrl
,dbs/dbName
应该是data
。您可以参考https://github.com/Azure/azure-documentdb-node/blob/master/source/lib/documentclient.js#L813获取源代码。