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

Vue3-接入飞书H5应用

引言

最近做了一个新项目,需要接入飞书H5应用,做得过程中也是遇到好多问题,现在总结分享给大家。

操作

首先遇到的一个棘手的问题就是免登问题,下面是官方文档的介绍:
1、开发指南开发网页应用开发指南
2、网页应用免登(SSO)示例代码介绍

我是直接使用第2条。

按照官方文档引入

<!-- 在html文档中引入 JSSDK -->
<!-- JS 文件版本在升级功能时地址会变化,如有需要(比如使用新增的 API),请重新引用「网页应用开发指南」中的JSSDK链接,确保你当前使用的JSSDK版本是最新的。-->
<script type="text/javascript"
src="https://lf1-cdn-tos.bytegoofy.com/goofy/lark/op/h5-js-sdk-1.5.26.js">
</script>
<!-- 在页面上添加VConsole方便调试-->
<script src="https://unpkg.com/vconsole/dist/vconsole.min.js"></script>
<script>
// VConsole will be exported to `window.VConsole` by default.
var vConsole = new window.VConsole();
</script>

然后,我们在Vue项目中这样使用:

onMounted(() =>{const _userData = localStorage.getItem("userData")if (_userData) {userDataRef.value = JSON.parse(_userData)} else {console.log("window.h5sdk.ready before");if (window.h5sdk){showLoading.value = truewindow.h5sdk.ready(() => {// 调用JSAPI tt.requestAccess 获取 authorization codett.requestAccess({appID: 'xxx',scopeList: [],// 获取成功后的回调success(res) {console.log("getAuthCode succeed", res);showLoading.value = falseif (res.code) {getUserInfo(res.code, (res) => {//todo:做你自己的业务逻辑})}},// 获取失败后的回调fail(err) {showLoading.value = falseshowToast('鉴权失败!')console.log(`getAuthCode failed, err:`, JSON.stringify(err));}})})}else {console.log("window.h5sdk not ready");}}
})

解释一下,页面打开之后立即查询是否有userData数据,如果有,则不获取飞书code,否则获取code,获取完扔给后台,后台处理完之后带上用户信息返回即可,这样就完成了免登操作,下面介绍下如何本地调试。

本地调试

1、登录飞书的后台应用,点击去调试按钮:
在这里插入图片描述
2、填写你的本地开发地址(推荐ip形式)
在这里插入图片描述
3、即可打开飞书浏览你本地的开发环境
在这里插入图片描述
因为我们引入了vconsole,所以会显示你打印的日志,方便你开发调试。

在这里插入图片描述
4、注意要在后台管理的安全设置里面设置重定向URL,否则获取Code会失败
在这里插入图片描述

总结

1、本地调试:用IP不要用localhost
2、发布飞书应用想让全体成员公开,需要发布的时候设置选中全体成员,如下所示:
在这里插入图片描述

引用

错误码

http://www.dtcms.com/a/397996.html

相关文章:

  • 四川省建设厅网站川北医学院广告网站怎么建设
  • 七彩喜智慧养老:科技向善,让晚年生活绽放“喜”悦之光
  • 模型驱动的 AI Agent架构:亚马逊云科技的Strands框架技术深度解析
  • 【数据结构】——外部排序(K路归并)
  • 【观成科技】活跃黑产团伙“黑猫”攻击武器加密通信分析
  • 高斯过程(Gaussian Process)回归:一种贝叶斯非参数方法
  • 微算法科技(NASDAQ MLGO)创新基于账户加权图与后量子密码学的区块链
  • 中国银行信息科技岗位笔试
  • WXML 编译错误修复总结
  • 怎么给网站wordpress游戏网站策划书
  • Halcon学习--(3)图像阈值处理
  • 知识导航新体验:Perplexica+cpolar 24小时智能服务
  • 全面解析Redis分布式锁
  • 自由学习记录(103)
  • 大模型部署基础设施搭建 - Dify
  • 没有网站怎么推广企业建设网站能否报销
  • 天津道路运输安全员考试报名条件
  • dbpystream webapi: 从阿里云福州站点到上海站点的迁移之旅
  • 解读 2025 《可信数据空间 使用控制技术要求》
  • Java多线程编程:阻塞队列、wait-notify锁协调机制、线程安全[条件产生渡送执行]
  • 绕过UAC开机自启动程序方法
  • 东莞市南城装饰工程东莞网站建设系统门窗品牌排行前十名
  • Nginx负载均衡算法与IP透传、跨域实战指南
  • asp.net不适合做网站凡客建设网站稳定吗
  • Vue中的路由细节
  • 高防 IP 是如何帮助数藏行业防刷
  • 将深度学习与Spring Boot集成:使用DL4J构建企业级AI应用的完整指南
  • 《UE5_C++多人TPS完整教程》学习笔记57 ——《P59 脚步声与跳跃声(Footstep And Jump Sounds)》
  • 【Qt】常用控件2——按钮类控件
  • 编程与数学 03-009 Linux 操作系统应用 19_Linux 系统性能监控