钉钉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班钉钉工作台的微应用就可以调试了

相关推荐
@八度余温14 分钟前
eslint 和 prettier 的相同点和区别
vue·eslint
周航宇JoeZhou2 小时前
JP4-7-MyLesson后台前端(五)
java·前端·vue·elementplus·前端项目·mylesson·管理平台
计算机学长felix5 小时前
基于Django的“酒店推荐系统”设计与开发(源码+数据库+文档+PPT)
数据库·python·mysql·django·vue
陶甜也7 小时前
threeJS 实现开花的效果
前端·vue·blender·threejs
叫我阿柒啊1 天前
从Java全栈到前端框架:一次真实面试的深度复盘
java·spring boot·typescript·vue·database·testing·microservices
借你耳朵说爱你1 天前
浅拷贝和深拷贝两种不同的对象复制
vue·web
F2E_Zhangmo1 天前
基于cornerstone3D的dicom影像浏览器 第四章 鼠标实现翻页、放大、移动、窗宽窗位调节
vue·cornerstone·cornerstone3d·cornerstonejs
最好结果2 天前
ruoyi系统-vue-elementui 表格单元格点击复制功能实现:实践与问题解决
vue