如何使用查询参数创建缝合服务

How to create a stitch Service with query params

我正在用 MongoDB Stitch 创建一个数据 API,我想知道如何创建一个带有查询参数的函数(当我调用我的 API) 我想在调用 API.

时像参数一样提供集合名称

有我的函数

exports = function(arg) {
const mongodb = context.services.get("mongodb-atlas");
const mycollection = mongodb.db("STM32").collection(arg);
console.log(arg) ;
var array = mycollection.find({}).toArray();  
return array ;
};

这是此类函数的极简示例

exports = function(payload, response) {
  // retrieve collection name from querystring (e.g. ?coll=myCollection)
    const {coll} = payload.query;

    // log collection name to confirm receipt from querystring
    console.log("collection name passed: ", coll);

    // query a mongodb service, passing the parameterized collection name
    const doc = context.services.get("mongodb-atlas").db("mydb").collection(coll).find().toArray();

    return  doc;
};

在 Stitch Function Editor 中测试

exports({query: {coll: 'myCollection'}})

在 Stitch 外部测试(例如在 Postman 中)

使用 Stitch 生成的 Webhook URL,然后附加查询参数。

https://webhooks.mongodb-stitch.com/api/client/v2.0/app/MY_STITCH_APP_ID/service/http/incoming_webhook/MY_WEBHOOK_NAME?coll=myCollection