收藏
回答

【已解决】云函数内request第三方access_token并存入集合中咋整?

//这个是返回的字符串

小程序云开发云的函数中用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)
        });
}
//下面的是返回到前端的数据
最后一次编辑于  2020-06-02
回答关注问题邀请回答
收藏

2 个回答

  • Mr.Zhao
    Mr.Zhao
    2020-06-02
    把集合名字和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
    }
    
    
    
    2020-06-02
    有用 2
    回复 1
    • 萧萧
      萧萧
      2020-06-02
      2020-06-02
      回复
  • 萧萧
    萧萧
    2020-06-02

    消灭0回复

    2020-06-02
    有用
    回复 1
    • 曹敏佳
      曹敏佳
      2020-08-21
      请问现在还有效吗?现在好像是有效2小时,而且新的会覆盖老的
      2020-08-21
      回复
登录 后发表内容
问题标签