当前位置: 首页 > news >正文

开发区经济建设网站东营百度推广公司

开发区经济建设网站,东营百度推广公司,销售网站建设的意义,做网站练手获取openID云函数use strict; exports.main async (event, context) > {//event为客户端上传的参数console.log(event : , event)// jscode2session 微信小程序登录接口,获取openidconst {code} event;// 云函数中如需要请求其他http服务,则使用uni…

获取openID

云函数

'use strict';
exports.main = async (event, context) => {//event为客户端上传的参数console.log('event : ', event)// jscode2session 微信小程序登录接口,获取openidconst {code} = event;// 云函数中如需要请求其他http服务,则使用uniCloud.httpclient.request(URL,requestOptions)const res = await uniCloud.httpclient.request("https://api.weixin.qq.com/sns/jscode2session?appid=小程序appId&secret=小程序appSecret&js_code="+code+"&grant_type=authorization_code", {// 返回的数据格式dataType: "json"})const openid = res.data.openid;//返回数据给客户端return event
};

调用云函数

      onLoad(option) {// uni.login是一个客户端API,统一封装了各个平台的各种常见的登录方式uni.login({// 登录服务提供商provider: 'weixin',success: (res) => {let code = res.code// uniCloud.callFunction的方式调用云函数uniCloud.callFunction({// 云函数名称name: "login",data: {// 客户端返回的codecode: code},success: (res) => {console.log(res)}})}})}
补充uniCloud.callFunction
// promise方式
uniCloud.callFunction({name:'hellocf',data:{a:1}}).then(res=>{});
// callback方式
uniCloud.callFunction({name:'hellocf',data:{a:1},success(){},fail(){},complete(){}
});

使用公共模块来修改上述代码

index.js|common

const appid = 'wx0990jsdis9fbjsdfjvd9fs'
const appSecrest = '234234hj0js09dfv0j9ds09fjvfs9dfj'module.exports = {appid: appid,appSecrest: appSecrest
}

index.js|login

'use strict';
const {appid,appSecrest
} = require('wx-common')
exports.main = async (event, context) => {XXXXXXXXXXXXXXXXXXX// 云函数中如需要请求其他http服务,则使用uniCloud.httpclient.request(URL,requestOptions)const res = await uniCloud.httpclient.request("https://api.weixin.qq.com/sns/jscode2session?appid=" + appid + "&secret=" + appSecrest + "&js_code=" + code +"&grant_type=authorization_code ", {// 返回的数据格式dataType: "json"})XXXXXXXXXXXXXXXXXXX
};

创建数据库,插入数据

云函数

{XXXXXXXXXXXXXXXXXXXXXXXXXXXX// uniCloud.database()方式获取数据库引用const db = uniCloud.database()const openid = res.data.openid;let userData = {openid: openid,nickName: '微信用户',avatarUrl: ""}// 可以获取指定集合的引用await db.collection("users").add(userData)//返回数据给客户端return userData
};
补充元数据库的操作

类型

接口

说明

add

新增记录(触发请求)

计数

count

获取符合条件的记录条数

get

获取集合中的记录,如果有使用 where 语句定义查询条件,则会返回匹配结果集 (触发请求)

引用

doc

获取对该集合中指定 id 的记录的引用

查询条件

where

通过指定条件筛选出匹配的记录,可搭配查询指令(eq, gt, in, ...)使用

skip

跳过指定数量的文档,常用于分页,传入 offset

orderBy

排序方式

limit

返回的结果集(文档数量)的限制,有默认值和上限值

field

指定需要返回的字段

获取用户信息

index.vue

      uni.getUserProfile({desc:"我就是想用",success: (res) => {console.log(res)}})

接口获取调整,详细请看:小程序用户头像昵称获取规则调整公告 | 微信开放社区 (qq.com)

目前小程序开发者可以通过 wx.login 接口直接获取用户的 openId 与 unionId 信息,实现微信身份登录。

使用jwt对openid进行加密与解密

在公共模块中安装jsonwebtoken,运行npm install jsonwebtoken

index.js|comon

const jwt = require("jsonwebtoken")
const getToken = () =>{return jwt.sign({openid:openid},appSecrest,{expiresIn:60*60*24});
}
const verifyToken = (token) =>{// jsonwebtoken提供了jwt.verify()方法验证tokenreturn jwt.verify(token,appSecrest)
}
module.exports = {xxxxxxxxxxxxxxxx,getToken:getToken,verifyToken:verifyToken
}

index.js|login

{
xxxxxxxxxx
const {xxxxxxxx,getToken
} = require('wx-common')const token = getToken(openid)//openid传入userData['token'] = token
//返回数据给客户端
return userData
}


未完 待补充

http://www.tj-hxxt.cn/news/30612.html

相关文章:

  • 网站建设期末作业免费开通网站
  • 一个人网站运营怎么做什么是网络营销推广
  • 网站设计 注意打开2345网址大全
  • 一般卖机械行业的做哪些网站线上推广平台报价
  • 中山市最新疫情手机游戏性能优化软件
  • 门户网站开发公司百度招聘官网首页
  • 开源程序网站亚马逊关键词优化软件
  • 网站建设教程免费夕滋湖南岚鸿官网奖券世界推广网站
  • 西安市政道桥建设公司网站广告公司推广
  • 深圳大型商城网站建设站长统计 站长统计
  • 做网站上海太原关键词优化软件
  • 网站建设后期测试咖啡seo是什么意思
  • 山东建设工程执业证书查询网站百度官方网址
  • asp网站改成php免费外链代发平台
  • 社交网站可以做亚马逊联盟吗百度seo视频教程
  • html怎么做动态页面优化推广服务
  • 注册网站需要多少百度的网站网址
  • 做最好的在线中文绅士本子阅读网站6营销咨询
  • 做网站是什么职位佛山百度网站排名优化
  • 网站正在建设中的搜索引擎优化要考虑哪些方面?
  • 最新闻头条新闻网站推广优化招聘
  • 建设高校实验室教学网站的作用温州seo顾问
  • 五莲建设监理有限公司网站营销型网站建设运营
  • wordpress 漏洞嘉兴seo外包服务商
  • 武汉 外贸网站建设网站收录一键提交
  • 男女做暧暧视频免费网站微信运营
  • 建网站的方案软文营销案例200字
  • 安徽先锋网站两学一做流氓网站
  • 访问网站 流程图建设一个网站的具体步骤
  • 网站开发流程抚州网站服务器是什么意思