iT邦幫忙

2024 iThome 鐵人賽

DAY 20
0
自我挑戰組

三十天自學計畫:從零開始學 Azure系列 第 20

[DAY 20] 使用 Azure Functions 和 Cosmos DB 開發 API(中)

  • 分享至 

  • xImage
  •  
  1. 在 Azure 入口網站中,複製 Cosmos DB 帳戶的連接字串。

  2. 打開 local.settings.json,將 Cosmos DB 的連接字串添加到應用程式的設定中:
    {
    "IsEncrypted": false,
    "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "node",
    "CosmosDBConnectionString": "AccountEndpoint=;AccountKey=;"}
    }

  3. 使用 Azure SDK 來配置 Cosmos DB 的連接。在 JavaScript 函數中,可以安裝 Cosmos DB SDK 並使用它來訪問 Cosmos DB。

  • npm install @azure/cosmos

連接好我們的 Cosmos DB 後,我們要來開發 Azure Functions 與 Cosmos DB 交互!

  1. 在 MyHttpTrigger 函數中,編寫代碼來與 Cosmos DB 進行數據交互。
  • 以下是一個簡單的例子,展示如何將數據插入到 Cosmos DB:
    const { CosmosClient } = require("@azure/cosmos");
    module.exports = async function (context, req) {
    const client = new CosmosClient(process.env.CosmosDBConnectionString);
    const database = client.database("MyDatabase");
    const container = database.container("MyContainer");
    const newItem = {
    id: req.body.id,
    name: req.body.name,
    description: req.body.description,
    };

    try {
    const { resource: createdItem } = await container.items.create(newItem);
    context.res = {
    status: 201,
    body: createdItem
    };
    } catch (err) {
    context.res = {
    status: 500,
    body: "Error inserting item into Cosmos DB"
    };
    }
    };

  • 上面的代碼展示了一個 HTTP POST API,它從請求正文中獲取數據,並將該數據插入到 Cosmos DB 的 MyContainer 中。


上一篇
[DAY 19] 使用 Azure Functions 和 Cosmos DB 開發 API(上)
下一篇
[DAY 21] 使用 Azure Functions 和 Cosmos DB 開發 API(下)
系列文
三十天自學計畫:從零開始學 Azure30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言