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

网站标题优化怎么做深网站建设

网站标题优化怎么做,深网站建设,建立网站做淘客,西部数码网站工具书接上回#xff0c;本文主要分享 企业内部系统集成钉钉官方OA审批流程的步骤 的第二部分。 前端代码集成钉钉免登JSAPI: 前端通过corpid 获得钉钉临时访问码code#xff0c;再通过临时访问码code调用此接口返回当前用户的姓名、userid、 钉钉用户id、 系统工号、 钉钉部门…书接上回本文主要分享 企业内部系统集成钉钉官方OA审批流程的步骤 的第二部分。 前端代码集成钉钉免登JSAPI: 前端通过corpid 获得钉钉临时访问码code再通过临时访问码code调用此接口返回当前用户的姓名、userid、 钉钉用户id、  系统工号、 钉钉部门id列表、 业务系统访问token 等信息然后将 token 存储到 localStorage。 前端框架使用 react 操作 localStorage 的基础代码 export function getToken(){return localStorage.getItem(token) as string }export function setToken(token:string){localStorage.setItem(token,token) }export function removeToken(){localStorage.removeItem(token) } 判断字段是否包含指定的字符串  export function containsStr(str:string, target:string): boolean{str str null ? str : str;target target null ? target : target;if(str.indexOf(target) ! -1){// 字段str包含指定的字符串return true;} else {// 字段str不包含指定的字符串return false;} } 钉钉免登录插件 export class checkLoginPlugin extends Middleware {async handler(ctx: MiddlewareContext{}, next: () Promiseany): Promisevoid {// 判断是否获取到了tokenvar token getToken()const base_url import.meta.env.BASE_URL;localStorage.setItem(base_url, base_url);if (token) {// token有值axios({method: get,baseURL: /sale,url: /api/checkToken?token token,headers: {Content-Type: application/json,},}).then((res: AxiosResponse) {if (res.data.code 200) {// token有效打开应用localStorage.setItem(dingUserId, res.data.dingUserId);localStorage.setItem(dingDeptIds, res.data.dingDeptId);// 检查当前登录人的角色中是否包含 MANAGER 可以辅助实现数据权限校验var role_no localStorage.getItem(role_no) as string;if (containsStr(role_no, MANAGER)) {localStorage.setItem(manager, true);} else {localStorage.setItem(manager, false);}next()} else { // token无效钉钉重新获取token不是钉钉直接提示未登录if (dd.env.platform ! notInDingTalk) {// 钉钉打开应用重新获取code及tokenconst corpid import.meta.env.CORPIDdd.ready(() {dd.runtime.permission.requestAuthCode({corpId: corpid,}).then((result) {const { code } result;axios({method: get,baseURL: /sale,url: /dd/login?code code,headers: {Content-Type: application/json},}).then((res: AxiosResponse) {localStorage.setItem(token, res.data.data.token);localStorage.setItem(dingUserId, res.data.data.dingUserId);localStorage.setItem(dingDeptIds, res.data.data.dingDeptIds);localStorage.setItem(user_info, res.data.data.user_info);localStorage.setItem(userno, res.data.data.user_no);localStorage.setItem(user_id, res.data.data.user_id);// 检查当前登录人的角列表是否包含 MANAGER 可以辅助实现数据权限校验var role_no localStorage.getItem(role_no) as string;if (containsStr(role_no, MANAGER)) {localStorage.setItem(manager, true);} else {localStorage.setItem(manager, false);}token res.data.data.token;// 可以继续访问应用资源next()return res.data.data}).catch(err {router.navigate(/check) //登录页return Promise.reject(err)})},).catch(err {// 出现异常跳转到登录页router.navigate(/checkLogin)});});} else {// 从钉钉外打开应用跳转到登录页router.navigate(/checkLogin)}}}).catch(err {// 出现异常跳转到登录页router.navigate(/checkLogin)return Promise.reject(err)})} else {// token没有值if (dd.env.platform ! notInDingTalk) {// 钉钉打开应用重新获取钉钉临时code及tokenconst corpid import.meta.env.CORPIDdd.ready(() {dd.runtime.permission.requestAuthCode({corpId: corpid,}).then((result) {const { code } result;axios({method: get,baseURL: /sale,url: /dd/login?code code,headers: {Content-Type: application/json},}).then((res: AxiosResponse) {localStorage.setItem(usertoken, res.data.data.token);localStorage.setItem(dingtalkUserId, res.data.data.dingtalkUserId);localStorage.setItem(dingtalkDeptIds, res.data.data.dingtalkDeptIds);localStorage.setItem(user_info, res.data.data.user_info);localStorage.setItem(userno, res.data.data.user_no);localStorage.setItem(user_id, res.data.data.user_id);// 检查当前登录人的角色中是否包含 MANAGER 可以辅助实现数据权限校验var role_no localStorage.getItem(role_no) as string;if (containsStr(role_no, MANAGER)) {localStorage.setItem(manager, true);} else {localStorage.setItem(manager, false);}token res.data.data.token;next()return res.data.data}).catch(err {// 出现异常跳转到登录页router.navigate(/checkLogin)return Promise.reject(err)})},).catch(err {// 出现异常跳转到登录页router.navigate(/checkLogin)});});} else { // 从钉钉外打开应用跳转到登录页router.navigate(/checkLogin)}}}}
http://www.hkea.cn/news/14439890/

相关文章:

  • 丰台网站开发联系电话爱企网
  • 海南做网站公司自动做效果图的网站
  • 用wordpress开发网站模板下载小程序一键开发免费
  • 如何做一网站首页wordpress fsockopen
  • 义乌开锁做网站哪个好查询网站相关网址
  • 企业网站建设公司司今天刚刚长沙又增加了一例
  • 做网站需要了解什么玉环网站建设公司
  • 沈阳网站seo优化哪家好wordpress打开很卡
  • 网站内容做淘宝店铺链接影响排名吗做网站买岩棉
  • 网站开发进度计划在线crm网站建站
  • 域名备案 没有网站网站页面尺寸大小
  • 微软网站做u盘启动教程房产网站制作方案
  • 中山哪家做网站好erp软件开发定制
  • 伪原创网站国内购物平台都有哪些
  • 做搞机网站天津智能网站建设
  • 网站商城设计phpstudy wordpress
  • 做pc端网站一般多少钱工信部 网站备案 上传电子
  • 邢台市住房和城乡建设局网站如何获取网站js图片
  • 小说网站的内容做什么软件可以做app软件
  • 建设大学网站费用网站建设网页设计
  • 网页设计知名网站2022电商平台用户排行榜
  • 零基础网站建设教学公司网站建设 网页
  • 谁在万网建设的网站西安小程序开发哪家好
  • WordPress国产企业主题m东莞网站优化
  • 发布公司信息的网站站内优化seo
  • 广州公关公司招聘台州网站seo外包
  • 制作网站的软件叫什么简单代码编程教学
  • 汉阴做网站ip分享网站
  • 网站建设背景怎么设置成网站提示域名解析错误怎么办
  • 网站建设开发招标书广告网站建设案例