钉钉h5微应用调试 整理

钉钉 H5微应用整理

1.申请H5微应用

https://open.dingtalk.com/ 登录钉钉开发平台。

应用appId、CorpId都可以在网站上自行查找
应用首页地址(指手机端显示地址)

pc端首页地址(指电脑端显示地址)

我这写的2个项目(应用首页和pc端首页),不是一个项目

应用需要在平台发布后才能看到

2.登录

1.安装钉钉插件

复制代码
方法一: npm install dingtalk-jsapi --save

方法二:

复制代码
 <script src="https://g.alicdn.com/dingding/h5-dingtalk-login/0.21.0/ddlogin.js"></script>

2.创建getCode.js 获取钉钉code 便于登录

复制代码
 import { getJSapi } from "@/api/login";
export function getCode(callback) {
  if (dd.env.platform !== "notInDingTalk") {
    dd.ready(() => {
      //使用SDK 获取免登授权码
     dd.runtime.permission.requestAuthCode({
      corpId:store.state.user.corpId,
      onSuccess: (info) => {
        // 根据钉钉提供的api 获得code后,再次调用这个callback方法
        // 由于是钉钉获取code是异步操作,不知道什么时候执行完毕
        // callback 函数会等他执行完毕后在自己调用自己
        callback(info.code)
      },
      onFail: (err) => {
        alert('fail');
        alert(JSON.stringify(err));
      },
    });
    });
  }
}

3.在login.vue页面引用

复制代码
//获取钉钉code
	import {
		getCode
	} from "@/utils/js/getCode.js";

methods: {
			//获取钉钉code
			getddCode() {
				getCode(code => {
					//拿到钉钉code 到后台交换token
					// 获取用户验证的token
					this.loadGetAccessToken(code);
				});
			},
			loadGetAccessToken(code) {
				let that = this
				DDLogin({//后台接口
					code: code
				}).then(res => {
				//其他操作 如账号存储、页面跳转等
				})
		}

3.调试

pc端调试 微应用调试工具-IDE

打开工具,点击应用
启动编译
运行后 红框就是可以调试的

这样就需要到开发平台 微应用处设置

上图设置后 打开工作台 报错 获取微应用免登授权码报错{ errorCode: 9, errorMessage: "对应企业没有https://dingone.test.dingtalk.com/ddLogin?redirect=%2Findex域名微应用" }

再次看了文档后(https://open.dingtalk.com/document/isvapp/h5-micro-applications-1)

所以我又设置了 应用首页地址和pc端首页地址为https://dingone.test.dingtalk.com/ddLogin?redirect=%2Findex

在次刷新就可以了

手机端调试:需要下载钉钉dev版本

https://open.dingtalk.com/document/resourcedownload/h5-debug

文档中下载的是


下载后需要根据文档设置哈

因为谷歌浏览器我这打不开,所以我用的浏览器是Microsoft 打开后输入edge://inspect/#devices 设置端口

用手机数据链接到主机 在打开dev班钉钉工作台的微应用就可以调试了

相关推荐
百锦再2 天前
重新学习Vue中的按键监听和鼠标监听
javascript·vue.js·vue·计算机外设·click·up·down
飞翔的佩奇2 天前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
百锦再4 天前
Vue中对象赋值问题:对象引用被保留,仅部分属性被覆盖
前端·javascript·vue.js·vue·web·reactive·ref
一笑code4 天前
vue/微信小程序/h5 实现react的boundary
微信小程序·vue·react
eric*16884 天前
尚硅谷张天禹老师课程配套笔记
前端·vue.js·笔记·vue·尚硅谷·张天禹·尚硅谷张天禹
喜欢敲代码的程序员4 天前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:项目搭建(一)
spring boot·mysql·elementui·vue·mybatis
海的诗篇_5 天前
前端开发面试题总结-原生小程序部分
前端·javascript·面试·小程序·vue·html
zandy10115 天前
衡石科技chatbot分析手册--钉钉数据问答机器人配置
科技·机器人·钉钉·chatbot·衡石科技
JAVA拾贝5 天前
Prometheus+Grafana运维监控并实现钉钉告警
运维·钉钉·grafana·prometheus·运维监控
sunbyte5 天前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | DragNDrop(拖拽占用组件)
前端·javascript·css·vue.js·vue