请问,钉钉微应用链接怎么才能加密(只能在钉钉里打开)在外面浏览器打不开?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
为了确保钉钉微应用链接只能在钉钉内部打开,而外部浏览器无法访问,钉钉提供了一种安全机制叫做“钉钉端内跳转”。这种机制通过特定的URL Scheme或者Universal Links实现,这些链接格式只被钉钉客户端识别并处理,普通浏览器则无法解析。
要实现这个功能,你不需要手动加密链接,而是需要按照钉钉开放平台的规范来构造你的链接。具体做法如下:
使用钉钉JSAPI:在微应用开发时,可以使用钉钉提供的JSAPI中的dd.biz.navigation.toExternalUrl
方法来生成和跳转一个安全链接。这个方法会确保链接只能在钉钉环境中有效。
dd.biz.navigation.toExternalUrl({
url: 'https://your-app-url', // 你想跳转的真实URL
onSuccess: function(result) {
// 跳转成功处理逻辑
},
onFail : function(err) {
// 跳转失败处理逻辑
}
});
H5页面中使用微应用路由:如果你的应用是H5页面,可以通过钉钉的微应用路由协议dingtalk://dingtalkclient/page
来构造链接。这样的链接在非钉钉环境下是无法直接打开的。
示例:
dingtalk://dingtalkclient/page?corpId=YOUR_CORPID&agentId=YOUR_AGENTID×tamp=TIMESTAMP&signature=SIGNATURE&url=https%3A%2F%2Fyour-app-url
其中,corpId
、agentId
、timestamp
、signature
等参数需要根据钉钉开放平台的文档进行计算和获取,以确保链接的有效性和安全性。
通过上述方式,你可以确保链接的安全性,即只能在钉钉客户端内被正确解析和打开,而在外部浏览器中则无法访问。这样既保护了用户数据的安全,也维护了应用的使用环境一致性。