共用方式為


Triggers class

建立、upsert、查詢和讀取所有觸發程序的作業。

使用 container.triggers 讀取、取代或移除 觸發程式

屬性

container

方法

create(TriggerDefinition, RequestOptions)

建立觸發程式。

Azure Cosmos DB 支援在 JavaScript 中定義的預先和後置觸發程式,以在建立、更新和刪除時執行。

如需其他詳細數據,請參閱伺服器端 JavaScript API 檔。

範例

import { CosmosClient, TriggerDefinition, TriggerType, TriggerOperation } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const triggerDefinition: TriggerDefinition = {
  id: "sample trigger",
  body: "serverScript() { var x = 10; }",
  triggerType: TriggerType.Pre,
  triggerOperation: TriggerOperation.All,
};

const { resource: trigger } = await container.scripts.triggers.create(triggerDefinition);
query(SqlQuerySpec, FeedOptions)

查詢所有觸發程式。

query<T>(SqlQuerySpec, FeedOptions)

查詢所有觸發程式。

範例

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec = {
  query: "SELECT * FROM root r WHERE r.id=@id",
  parameters: [
    {
      name: "@id",
      value: "<trigger-id>",
    },
  ],
};
const { resources: results } = await container.scripts.triggers.query(querySpec).fetchAll();
readAll(FeedOptions)

讀取所有觸發程式。

範例

讀取數位的所有觸發程式。

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: triggerList } = await container.scripts.triggers.readAll().fetchAll();

屬性詳細資料

container

container: Container

屬性值

方法詳細資料

create(TriggerDefinition, RequestOptions)

建立觸發程式。

Azure Cosmos DB 支援在 JavaScript 中定義的預先和後置觸發程式,以在建立、更新和刪除時執行。

如需其他詳細數據,請參閱伺服器端 JavaScript API 檔。

範例

import { CosmosClient, TriggerDefinition, TriggerType, TriggerOperation } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const triggerDefinition: TriggerDefinition = {
  id: "sample trigger",
  body: "serverScript() { var x = 10; }",
  triggerType: TriggerType.Pre,
  triggerOperation: TriggerOperation.All,
};

const { resource: trigger } = await container.scripts.triggers.create(triggerDefinition);
function create(body: TriggerDefinition, options?: RequestOptions): Promise<TriggerResponse>

參數

options
RequestOptions

傳回

Promise<TriggerResponse>

query(SqlQuerySpec, FeedOptions)

查詢所有觸發程式。

function query(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<any>

參數

query
SqlQuerySpec

作業的查詢組態。 如需如何設定查詢的詳細資訊,請參閱 SqlQuerySpec

options
FeedOptions

傳回

query<T>(SqlQuerySpec, FeedOptions)

查詢所有觸發程式。

範例

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec = {
  query: "SELECT * FROM root r WHERE r.id=@id",
  parameters: [
    {
      name: "@id",
      value: "<trigger-id>",
    },
  ],
};
const { resources: results } = await container.scripts.triggers.query(querySpec).fetchAll();
function query<T>(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<T>

參數

query
SqlQuerySpec

作業的查詢組態。 如需如何設定查詢的詳細資訊,請參閱 SqlQuerySpec。 *

options
FeedOptions

傳回

readAll(FeedOptions)

讀取所有觸發程式。

範例

讀取數位的所有觸發程式。

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: triggerList } = await container.scripts.triggers.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<TriggerDefinition & Resource>

參數

options
FeedOptions

傳回