你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
列出触发器
对特定数据库的触发器资源执行 GET 将返回集合中触发器的列表。
请求
方法 | 请求 URI | 说明 |
---|---|---|
GET | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/triggers |
请注意,{databaseaccount} 是在订阅下创建的 Azure Cosmos DB 帐户的名称。 {db-id} 值是触发器所在的数据库的用户生成的名称/ID,而不是 (删除数据库) 的系统生成的 ID。 {coll-id} 值是触发器所在的集合的名称。 |
标头
有关所有 Cosmos DB 请求 使用的标头,请参阅常见的 Azure Cosmos DB REST 请求标头。
正文
无。
响应
标头
有关所有 Cosmos DB 响应 返回的标头,请参阅常见的 Azure Cosmos DB REST 响应标头。
状态代码
下表列出了此操作返回的常见状态代码。 有关状态代码的完整列表,请参阅 HTTP 状态代码。
HTTP 状态代码 | 说明 |
---|---|
200 正常 | 操作成功。 |
正文
属性 | 说明 |
---|---|
_摆脱 | 它是系统生成的属性。 资源 ID (_rid) 是一个唯一标识符,也是根据资源模型上的资源堆栈分层的。 它可供内部用于放置和导航触发器资源。 |
_计数 | 返回的触发器数。 |
触发器 | |
id | 它是用来标识该触发器的唯一名称。 |
body | 它是触发器的主体。 |
triggerOperation | 它是调用触发器的操作类型。 可接受的值为: All、 Insert、 Replace 和 Delete。 |
triggerType | 这指定触发触发器的时间。 可接受的值为: Pre 和 Post。 操作 前触发器在操作之前触发,而 Post 在操作后触发。 |
_摆脱 | 它是系统生成的属性。 资源 ID (_rid) 是一个唯一标识符,也是根据资源模型上的资源堆栈分层的。 它可供内部用于放置和导航触发器资源。 |
_ts | 它是系统生成的属性。 它指定资源的上次更新时间戳。 高值是一个时间戳。 |
_自我 | 它是系统生成的属性。 它是资源的唯一可寻址 URI。 |
_Etag | 它是系统生成的属性,用于指定乐观并发控制所需的资源 etag。 |
{
"_rid": "Sl8fALN4sw4=",
"Triggers": [{
"body": "function updateMetadata() {\r\n var context = getContext();\r\n var collection = context.getCollection();\r\n var response = context.getResponse();\r\n var createdDocument = response.getBody();\r\n\r\n // query for metadata document\r\n var filterQuery = 'SELECT * FROM root r WHERE r.id = \"_metadata\"';\r\n var accept = collection.queryDocuments(collection.getSelfLink(), filterQuery,\r\n updateMetadataCallback);\r\n if(!accept) throw \"Unable to update metadata, abort\";\r\n\r\n function updateMetadataCallback(err, documents, responseOptions) {\r\n if(err) throw new Error(\"Error\" + err.message);\r\n if(documents.length != 1) throw 'Unable to find metadata document';\r\n var metadataDocument = documents[0];\r\n\r\n // update metadata\r\n metadataDocument.createdDocuments += 1;\r\n metadataDocument.createdNames += \" \" + createdDocument.id;\r\n var accept = collection.replaceDocument(metadataDocument._self,\r\n metadataDocument, function(err, docReplaced) {\r\n if(err) throw \"Unable to update metadata, abort\";\r\n });\r\n if(!accept) throw \"Unable to update metadata, abort\";\r\n return; \r\n }",
"id": "PostTrigger-UpdateMetaAll",
"triggerOperation": "All",
"triggerType": "Post",
"_rid": "Sl8fALN4sw4BAAAAAAAAcA==",
"_ts": 1449689654,
"_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/triggers\/Sl8fALN4sw4BAAAAAAAAcA==\/",
"_etag": "\"060022e5-0000-0000-0000-566882360000\""
}],
"_count": 1
}
示例
GET https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/triggers HTTP/1.1
x-ms-session-token: 43
x-ms-date: Wed, 09 Dec 2015 19:40:27 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3ddQsYc7kfkHMsxNN7K55hEImj9Pf1Ng2EV7b4aHbr%2fE8%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=43
Connection: Keep-Alive
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/triggers
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Thu, 26 Nov 2015 05:55:14.602 GMT
x-ms-resource-quota: triggers=25;
x-ms-resource-usage: triggers=1;
x-ms-item-count: 1
x-ms-schemaversion: 1.1
x-ms-alt-content-path: dbs/volcanodb/colls/volcano1
x-ms-content-path: Sl8fALN4sw4=
x-ms-session-token: 43
x-ms-request-charge: 1.05
x-ms-serviceversion: version=1.5.57.3
x-ms-activity-id: b3502e9f-1afc-4168-860a-b0249a0698de
Set-Cookie: x-ms-session-token=43; Domain=contosomarketing.documents.azure.com; Path=/dbs/volcanodb/colls/volcano1
x-ms-gatewayversion: version=1.5.57.3
Date: Wed, 09 Dec 2015 19:40:26 GMT
Content-Length: 1613
{
"_rid": "Sl8fALN4sw4=",
"Triggers": [{
"body": "function updateMetadata() {\r\n var context = getContext();\r\n var collection = context.getCollection();\r\n var response = context.getResponse();\r\n var createdDocument = response.getBody();\r\n\r\n // query for metadata document\r\n var filterQuery = 'SELECT * FROM root r WHERE r.id = \"_metadata\"';\r\n var accept = collection.queryDocuments(collection.getSelfLink(), filterQuery,\r\n updateMetadataCallback);\r\n if(!accept) throw \"Unable to update metadata, abort\";\r\n\r\n function updateMetadataCallback(err, documents, responseOptions) {\r\n if(err) throw new Error(\"Error\" + err.message);\r\n if(documents.length != 1) throw 'Unable to find metadata document';\r\n var metadataDocument = documents[0];\r\n\r\n // update metadata\r\n metadataDocument.createdDocuments += 1;\r\n metadataDocument.createdNames += \" \" + createdDocument.id;\r\n var accept = collection.replaceDocument(metadataDocument._self,\r\n metadataDocument, function(err, docReplaced) {\r\n if(err) throw \"Unable to update metadata, abort\";\r\n });\r\n if(!accept) throw \"Unable to update metadata, abort\";\r\n return; \r\n }",
"id": "PostTrigger-UpdateMetaAll",
"triggerOperation": "All",
"triggerType": "Post",
"_rid": "Sl8fALN4sw4BAAAAAAAAcA==",
"_ts": 1449689654,
"_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/triggers\/Sl8fALN4sw4BAAAAAAAAcA==\/",
"_etag": "\"060022e5-0000-0000-0000-566882360000\""
}],
"_count": 1
}