【已解决】云函数内request第三方access_token并存入集合中咋整?
发布于 7 年前 作者 xiaguiying 8963 次浏览 来自 问答

//这个是返回的字符串

小程序云开发云的函数中用request-promise请求了一个access_token,这个access_token的时效性的俩天,所以我想让他请求完后直接更新到集合中去,前端只需要读取这个集合里的access_token就可以了,让后用定时触发器每一天更新一次,求大佬显神通

const cloud = require('wx-server-sdk')
cloud.init()
var rp = require('request-promise');
var options = {
    method'POST',
    uri'https://www.bigiot.net/oauth/token?client_id=901&client_secret=35e0e688c1&username=12841&password=11b945045d&grant_type=password',//id、password等数据不加引号
    body: {
    },
    jsontrue 
};
// 云函数入口函数
exports.main = async (event, context) => {
    
    return rp(options)
        .then(function (res{
            console.log(res)
            return res
        })
        .catch(function (err{
            console.log(err)
        });
}
//下面的是返回到前端的数据
2 回复

消灭0回复

把集合名字和docid换换就能跑了

const cloud = require('wx-server-sdk')

cloud.init()
const rp = require('request-promise')

const options = {
  method'POST',
  uri'https://www.bigiot.net/oauth/token?client_id=901&client_secret=35e0e688c1&username=12841&password=11b945045d&grant_type=password'// id、password等数据不加引号
  body: {
  },
  jsontrue
}

// 云函数入口函数
exports.main = async () => {
  const token = await rp(options)
  const db = cloud.database()
  const result = await db.collection('todos').doc('XUCL6UCMzM27ScFPKHzXndGemMWv7DrL4LnteOnNWcuZUeVU').update({
    data: {
      access_token: token.access_token
    }
  })
  return result
}

回到顶部