小程序云函数发起http请求

2019-10-24  本文已影响0人  忆枫_heartill

1、新建名为http的云函数并在http云函数目录下安装got。

npm install --save got

2、编辑index.js
cloudfunctions:http/index.js

// 云函数入口文件
const cloud = require('wx-server-sdk')

const got = require('got'); //引用 got
let appid = '';
let secret = '';

cloud.init()

// 云函数入口函数
exports.main = async(event, context) => {

  let { js_code } = event; // 获取传过来的参数

  let url = 'https://api.weixin.qq.com/sns/jscode2session?appid=' + appid + '&secret=' + secret + '&js_code=' + js_code + '&grant_type=authorization_code';

  let postResponse = await got(url, {
    method: 'GET', //post请求
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({

    })
  })

  return JSON.parse(postResponse.body)

}

3、调用云函数

// 调用云函数发起http请求
  wx.cloud.callFunction({
    name: 'http',
    data: {
      js_code: res.code
    },
    success: res => {
      console.log(res)
      wx.showToast({
        title: '登录成功',
        icon: 'none',
        duration: 2000
      })
    },
    fail: err => {
      wx.showToast({
        title: '登录失败',
        icon: 'none',
        duration: 2000
      })
    }
  })

4、返回session_key、openid等信息

上一篇下一篇

猜你喜欢

热点阅读