2.7.6 • Published 4 years ago

azero-sdk-mongodb-persistence-adapter v2.7.6

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
4 years ago

azero-sdk-mongodb-persistence-adapter for nodejs

这是一个帮助开发Skill开发者实现技能持久化

用法如下:

项目根目录安装

npm install azero-sdk-mongodb-persistence-adapter-2.7.0.tgz

引入:

const {MongoDbPersistenceAdapter,PartitionKeyGenerator, PartitionKeyGenerators} = require('azero-sdk-mongodb-persistence-adapter');

let persistenceAdapter

初始化:

`async function connectInit() {

const client = await MongoClient.connect("dburl", { useNewUrlParser: true })
    
    .catch( (err) => {
    
        console.log(err);
        
    });
    
if (!client) {

    return;
    
}

try {

    return await client.db("DATABASES") ;
    
} catch (err) {

    console.log(err);
    
}

}

`

` const mongoClint = await connectInit(); //创建mongoClint

 if(persistenceAdapter==undefined){
 
        //初始化persistenceAdapter
        persistenceAdapter = new MongoDbPersistenceAdapter({
            tableName: 'alx123', //要创建的表名,必填
            partitionKeyName:'my_id', //查询关键字 不写默认为id
            attributesName:'my_attributes', //查询对象,不写默认为attributes
            mongoClient:mongoClint,// 数据库连接,不写默认获取环境变量配置的数据库连接
            partitionKeyGenerator:PartitionKeyGenerators.deviceId//partitionKeyName的值默认为userid
        });
    }
 //保存方法
 await persistenceAdapter.saveAttributes(handlerInput.requestEnvelope,{"alx1":"alx1"});
 //查询方法
 await persistenceAdapter.getAttributes(handlerInput.requestEnvelope).then(msg=>{
             console.log('111',msg);
         });
  //删除方法       
 await  persistenceAdapter.deleteAttributes(handlerInput.requestEnvelope);`