트리거 나열
특정 데이터베이스의 트리거 리소스에서 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 | 트리거를 호출하는 작업의 유형입니다. 허용되는 값은 모두, 삽입, 바꾸기 및 삭제입니다. |
triggerType | 트리거가 실행되는 시기를 지정합니다. 허용되는 값은 Pre 및 Post입니다. 사전 트리거는 작업 전에 발생하지만 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
}