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

中山市网站制作微信营销案例

中山市网站制作,微信营销案例,网站被刷怎么办,网站制作中企动力优小程序登录 涂鸦官方提供了登录能力,开发者可以通过相关 API 获取 App 的用户身份标识,快速的建立小程序内的用户体系。 登录流程 说明 需要调用 ty.login() 获取 临时登录凭证 code,并将 code 传到开发者服务器开发者服务器调用涂鸦云开发…

小程序登录

涂鸦官方提供了登录能力,开发者可以通过相关 API 获取 App 的用户身份标识,快速的建立小程序内的用户体系。

登录流程

说明
  1. 需要调用 ty.login() 获取 临时登录凭证 code,并将 code 传到开发者服务器
  2. 开发者服务器调用涂鸦云开发能力 API /1.0/token,传入 code,获取 access_token 及 uid,然后开发者根据 aceess_token 及 uid 自定义登录状态,并返回给前端,然后进行后续的交互。

注意:在开发小程序前,请先确保已经将小程序与云项目进行关联,关联方法请参考下面的服务器开发。

服务器开发

开发者服务器端要调用涂鸦云开发能力 API,需要创建云项目,并需要将云项目应用与小程序进行关联。

  • 使用 IoT 账号登录到 IoT 平台,选择云开发菜单,点击创建云项目

  • 创建成功后,即在云项目的详细页面中查询获取 Client ID 及 Client secret,用于请求 API 签名

 

  • 到小程序开发者平台,进入小程序开发设置菜单,点击云项目模块的 添加 按钮,然后选择对应的云项目关联。

相关文档:
  1. 云开发开发文档,可参考这里文档。
  2. API 签名机制,可参考这里

代码示例

小程序代码

import {getStorageSync,getSystemInfoSync,login,removeStorageSync,request,setStorageSync,getUserInfo,showModal,
} from '@ray-js/ray';const { code } = await login({});
const { nickName, avatorUrl } = new Promise((resolve, reject) =>getUserInfo({ success: resolve, failure: reject }),
);
request({url: `https://wwww.xxx.com/login`,method: 'POST',header: {'Content-Type': 'application/json',},data: {code,nickName,avatorUrl,},success: ({ data }: any) => {// 由于小程序没有 cookie,这时使用 storage 管理登录态setStorageSync({key: 'session',data,});},failure: () => {showModal({title: '提示',content: '登录失败',showCancel: false,});},
});

服务器端代码(这里使用 Nodejs Koa 实现)

import Koa from 'koa';
import KoaRouter from 'koa-router';
import crypto from 'crypto';
import axios from 'axios';
import bodyParser from 'koa-bodyparser';const app = new Koa();
const router = new KoaRouter();
const accessKey = '云开发 Client ID';
const secretKey = '云开发 Client Secret';// 登录接口
router.post(`/login`, async (ctx) => {const { code, nickName, avatorUrl } = ctx.request.body;// 加密处理const contentHash = crypto.createHash('sha256').update('').digest('hex');const t = +new Date();const nonce = '';const stringToSign = ['GET', contentHash, '', path].join('\n');const signStr = [accessKey, t, nonce, stringToSign].join('');const sign = crypto.createHmac('sha256', secretKey).update(signStr, 'utf8').digest('hex').toUpperCase();const { data } = await axios({// 不同的地区需要使用不同的域名地址,这里为中国区地址url: `https://openapi.tuyacn.com/v1.0/token?code=${code}&grant_type=2`,method: 'GET',headers: {t,sign,client_id: accessKey,sign_method: 'HMAC-SHA256',Dev_lang: 'Nodejs','Signature-Headers': '',},});let responseData;if (data.success) {const { uid } = data.result;responseData = {success: true,result: {sessionId: '1234567890', // 服务端自己生成一个唯一id,用于管理小程序登录状态},};} elseresponseData = {success: false,errMsg: data.msg,errCode: data.code,};{}ctx.body = responseData;
});app.use(bodyParser()).use(router.allowedMethods()).use(router.routes());app.listen(3000, async () => {console.log(`Server start on http://localhost:9000`);
});
http://www.shuangfujiaoyu.com/news/20480.html

相关文章:

  • 建立自己的网站平台的好处bt搜索引擎下载
  • 网站这么推广seo推广教学
  • 做网站的电销话术系统优化app
  • 网站建设需求问卷qq群排名优化软件
  • 腾讯地图北斗导航下载广州推广seo
  • 重庆秀山网站建设费用windows优化大师怎么彻底删除
  • 中型网站开发周期百度一下移动版首页
  • 有什么做网站的公司广告网络推广怎么做
  • 哪些网站可以免费做h5seoul是什么品牌
  • 上线一个网站需要多少钱广州网站建设工作室
  • 多就能自己做网站独立站建站需要多少钱
  • 专业的深圳网站建设公司哪家好网络推广工作好做不
  • 做网站详细步骤刷赞网站推广永久
  • 网站为什么改版关键词优化的策略有哪些
  • jsp动态网站开发心得软文广告例子
  • 网站有哪些功能网站托管服务商
  • 货到付款网站怎么做可以推广的平台
  • 人力资源做网站的好处最彻底的手机优化软件
  • 旅行做攻略的网站如何在百度上发布自己的文章
  • 网站规划有前途吗企业培训平台
  • 网站url可以在自己做吗中国大数据平台官网
  • 哪些网站容易被百度收录百度百度地图
  • 网站建设投标书服务方案范本网站优化包括对什么优化
  • 网页设计大赛新闻稿seo和sem的概念
  • 莱芜做网站建设的公司百度搜索app下载
  • 有一个做炫舞官网活动的网站客户推广渠道有哪些
  • 在国外做热情网站的风险搜索引擎名词解释
  • 国外的一个大学生做的匿名社交网站百度渠道开户哪里找
  • 专门做二手手机的网站新平台怎么推广
  • 红河优才网站建设代做关键词收录排名