getMembers(mongoDBInstance: Db instance, index: String, fieldInfo: Object, page: Object)
[starting from version: 2.8]
This API call allows getting all members of the field from a MongoDB database. Used in the handler of the Flexmonster /members request. The getMembers
method is a part of the Flexmonster MongoDB Connector API.
Parameter/Type | Description |
---|---|
mongoDBInstance Db instance | The instance of the needed MongoDB database. |
index String | The collection’s name. The index is sent in the body of the Flexmonster request. |
fieldInfo Object | Contains information about the field. |
fieldInfo.field FieldObject | The field whose members should be sent in the response. The field is sent in the body of the Flexmonster request. |
fieldInfo.filter FilterGroupObject | Filters that should be applied to members. The filter is sent in the body of the Flexmonster request when multilevel hierarchies are configured in the component. |
page Object | Can be used to load members by parts. |
page.pageNumber Number | Page number. Starts from 0 . The pageNumber is sent in the body of the Flexmonster request. |
page.pageToken String | A key calculated on the server that defines which part of the data should be loaded next. The pageToken is sent in the body of the Flexmonster request. |
An array of objects, which contains all the members. The response format is the same as in the /members request.
1) Handling the /members request using the getMembers
method:
mongo.post("/members", async (req, res) => { try { const result = await MongoDataAPI.getMembers( mongoDBInstance, req.body.index, { req.body.field }, {pageNumber: req.body.page, pageToken: req.body.pageToken} ); res.json(result); } catch (err) { } });
2) Handling the /members request when multilevel hierarchies are configured in the component:
mongo.post("/members", async (req, res) => { try { const result = await MongoDataAPI.getMembers( mongoDBInstance, req.body.index, {field: req.body.field, filter: req.body.filter}, {pageNumber: req.body.page, pageToken: req.body.pageToken} ); res.json(result); } catch (err) { } });