Movatterモバイル変換


[0]ホーム

URL:


mongodb-data-api
TypeScript icon, indicating that this package has built-in type declarations

0.4.0 • Public • Published

mongodb-data-api

GitHub stars npm Test Codecov GitHub license

MongoDB AtlasData API SDK for Node.js.


Installation

npm install mongodb-data-api --save

or

yarn add mongodb-data-api

Usage

Init

import{createMongoDBDataAPI}from'mongodb-data-api'// init by URL Endpointconstapi=createMongoDBDataAPI({apiKey:'<your_mongodb_api_key>',urlEndpoint:'https://data.mongodb-api.com/app/<your_mongodb_app_id>/endpoint/data/v1'})// or init by app IDconstapi=createMongoDBDataAPI({apiKey:'<your_mongodb_api_key>',appId:'<your_mongodb_app_id>'})// specific region and cloud of appconstapi=createMongoDBDataAPI({apiKey:'<your_mongodb_api_key>',appId:'<your_mongodb_app_id>',region:'<your_mongodb_app_region>',// e.g. us-east-1cloud:'<your_mongodb_app_cloud>'// e.g. aws})

Actions

SeeMongoDB Data API Resources.

Action examples

  1. find a single document
api.findOne({dataSource:'<target_cluster_name>',database:'<target_database_name>',collection:'<target_collection_name>',filter:{name:'Surmon'}}).then((result)=>{console.log(result.document)})
  1. insert a single document
api.insertOne({dataSource:'<target_cluster_name>',database:'<target_database_name>',collection:'<target_collection_name>',document:{name:'Surmon',age:19}}).then((result)=>{console.log(result.insertedId)})
  1. run an aggregation pipeline
api.aggregate({dataSource:'<target_cluster_name>',database:'<target_database_name>',collection:'<target_collection_name>',pipeline:[{$match:{status:'urgent'}},{$group:{_id:'$productName',sumQuantity:{$sum:'$quantity'}}}]}).then((result)=>{console.log(result.documents)})

Method chaining

// select clusterconstclusterA=api.$cluster('a')// select databaseconstdatabaseB=clusterA.$database('b')// select collectionconstcollectionC=databaseB.$collection<C>('c')// data actionsconstdata=awaitcollectionC.findOne({filter:{/*...*/}})constresult=awaitcollectionC.insertOne({document:{/*...*/}})// -------------// chaining is equivalent to the api callapi.$cluster('a').$database('b').$collection<C>('c').findOne({filter:{}})// the same asapi.findOne<C>({dataSource:'a',database:'b',collection:'c',filter:{}})

Specific Action

You can specify the action request to prevent this package from lagging relative to the official one.

api.$$action('findOne',{dataSource:'...',database:'...',collection:'...',filter:{}})

Original Class

You can use the original Class to implement some special requirements.

import{MongoDBDataAPI}from'mongodb-data-api'constcustomerCollection=newMongoDBDataAPI<CustomerDocument>({apiKey:'<your_mongodb_api_key>',appId:'<your_mongodb_app_id>'},{dataSource:'<target_cluster_name>',database:'<target_database_name>',collection:'<target_collection_name>'})constcustomer=awaitcustomerCollection.findOne({ ...})

Development

# install dependenciesyarn# lintyarn lint# testyarntest# buildyarn build

Changelog

Detailed changes for each release are documented in therelease notes.

License

MIT

Package Sidebar

Install

npm i mongodb-data-api

Weekly Downloads

48

Version

0.4.0

License

MIT

Unpacked Size

42.3 kB

Total Files

8

Last publish

Collaborators

  • surmon

[8]ページ先頭

©2009-2025 Movatter.jp