Функция Azure - после привязки, как вызвать функцию - PullRequest
1 голос
/ 12 апреля 2019

У меня есть функция Azure.Я создал выходную привязку, и данные записываются в этот выход CosmosDB.

Однако я хочу спросить, как только это будет сделано, можно ли нажать другой триггер?

Илия должен вручную написать код для добавления в БД, а именно, не используя привязку out?

Спасибо.

Вот код:

function.json

{
  "bindings": [
    {
      "type": "cosmosDBTrigger",
      "name": "documents",
      "direction": "in",
      "leaseCollectionName": "leases",
      "connectionStringSetting": "COSMOSDB_INPUT_CONNECTION_STRING",
      "databaseName": "default",
      "collectionName": "metadata",
      "createLeaseCollectionIfNotExists": false,
      "leaseCollectionPrefix": "IngestMetadata",
      "startFromBeginning": true
    },
    {
      "type": "cosmosDB",
      "name": "outputdocuments",
      "direction": "out",
      "connectionStringSetting": "COSMOSDB_CONNECTION_STRING",
      "databaseName": "default",
      "collectionName": "metadata",
      "createIfNotExists": true
  }
  ],
  "scriptFile": "../dist/IngestMetadata/index.js"
}

И сам код:

const cosmosDBTrigger: AzureFunction = async function (context: Context, documents: any[]): Promise<void> {
    if (!!documents && documents.length > 0) {
        context.bindings.outputdocuments = documents;
    }

    context.done();
}

Так что после context.done я хочу нажать еще один триггер

1 Ответ

1 голос
/ 12 апреля 2019

Да, вы можете использовать Azure Функциональные триггеры для этого

function.json

{
    "type": "cosmosDBTrigger",
    "name": "documents",
    "direction": "in",
    "leaseCollectionName": "leases",
    "connectionStringSetting": "<connection-app-setting>",
    "databaseName": "Tasks",
    "collectionName": "Items",
    "createLeaseCollectionIfNotExists": true
}

затем код JS.

  module.exports = function (context, documents) {
      context.log('First document Id modified : ', documents[0].id);

      context.done();
    }

Таким образом, у вас может быть логика, например, от http-триггера, который вы пишете в cosmos db, и другой триггер, как только что-то записывается в cosmos db и т. Д.

PS. Итак, чтобы подвести итог, так как я ответил на ваш предыдущий вопрос, в результате у вас будет 2 функции, во-первых, из вашего другого вопроса, где вы записываете вывод в cosmos db, а во-вторых, из этого вопроса, где он будет запущен, как только 1 функция будет закончить выполнение и данные доступны в космосе дБ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...