你当前正在访问 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 请求标头

Body

无。

响应

标头

有关所有Cosmos DB 响应返回的标头,请参阅常见的 Azure Cosmos DB REST 响应标头

状态代码

下表列出了此操作返回的常见状态代码。 有关状态代码的完整列表,请参阅 HTTP 状态代码

HTTP 状态代码 说明
200 正常 操作成功。

正文

属性 说明
_rid 它是系统生成的属性。 资源 ID (_rid) 是一个唯一标识符,也是根据资源模型中的资源堆栈分层的标识符。 它可供内部用于放置和导航触发器资源。
_count 返回的触发器数。
触发器
id 它是用来标识该触发器的唯一名称。
body 它是触发器的正文。
triggerOperation 它是调用触发器的操作的类型。 可接受的值为: AllInsertReplaceDelete
triggerType 这指定触发触发器的时间。 可接受的值为: PrePost操作 后触发操作前触发,而 Post 触发器在操作后触发。
_rid 它是系统生成的属性。 资源 ID (_rid) 是一个唯一标识符,也是根据资源模型中的资源堆栈分层的标识符。 它可供内部用于放置和导航触发器资源。
_ts 它是系统生成的属性。 它指定资源的上次更新时间戳。 高值是一个时间戳。
_self 它是系统生成的属性。 它是资源的唯一可寻址 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  
}  
  

另请参阅