Appearance
政务钉以游客身份访问应用分享页面
MAS平台 、LOCAS平台(可选)要求:
- [
MAS >= v5.10.20
] - [
LOCAS >= v2.3
]
场景说明
政务钉应用内页面分享给通讯录成员,对于那些非应用授权范围内的人员访问政务钉分享出来的页面后需要以平台游客身份【一个特殊账号,登录名固定为:tourist,需要管理员创建】来访问
示例将以下面信息进行说明
租户code:valid
pc站点code: test
移动站点code: phone
移动项目code: share
移动应用:lc-share
主页code: index
待分享页面code: page2
开发示例
1、项目空间新建移动项目:share
2、新建主页:index(主页中通过按钮路由进page2页面)和分享页面:page2(将此页面对外分享)
index页面主要是跳转其他页面
page2页面主要演示获取访问者政务钉信息、如何将页面分享出去
如何获取访问者信息
通过政务钉api:dd.getLoginUser() 获取,该api无需认证
jsdd.getLoginUser().then(res => { console.log(res) }).catch(err => {})
如何分享页面
通过政务钉api:dd.shareToMessage({})来分享,该api无需认证
jsdd.shareToMessage({ "url": "http://gsoft.320.io:6491/mobile.html#/lc-share/page2?_tenant=valid&_site=phone&touristView=true", "title": "浙政钉分享验证", "content": "分享内容分享内容" "image": "https://xxx.com/xx.png" }).then(res => { }).catch(err => { })
特别提示:
- 分享的页面地址上touristView参数一定要传,且值为:true,否则非政务钉应用授权内用户将无法访问分享的页面内容
- /lc-share/page2: lc-share为该项目发布的应用标识;page2为要分享出去的页面标识
移动端页面地址规则
- 协议://域名或IP:端口/mobile.html#/应用标识/页面标识?_tenant=租户标识&_site=站点标识&touristView=true&其他业务参数...
- page2完整代码示例:
js
// 模型定义规范与Vue组件定义相同
{
data(){
return {
touristInfo:'', //访问者信息,通过政务钉api获取
fromShare: false,
userInfo: '' //平台游客账号信息,访问者将以游客身份访问业务系统
}
},
created(){
let user = this.$store.getters.user
this.userInfo = JSON.stringify(user)
dd.getLoginUser().then(res => {
this.touristInfo = JSON.stringify(res)
}).catch(err => {})
},
methods:{
share(){
dd.shareToMessage({
"url": "http://gsoft.320.io:6491/mobile.html#/lc-share/page2?_tenant=valid&_site=phone&touristView=true",
"title": "浙政钉分享验证",
"content": "分享内容分享内容"
}).then(res => {
}).catch(err => {
})
}
}
}
3、发布应用lc-share,并上架授权给phone站点
4、管理员创建登录名为:tourist的账号,并授权给phone站点【如果移动站点没有tourist账号,游客访问分享的链接将提示无权限】
- 取消tourist对移动站点的授权后,通过分享地址访问页面将会提示“游客身份认证失败”
5、政务钉上架应用,并配置移动站点地址为:http://gsoft.320.io:6491/mobile.html#/?_tenant=valid&_site=phone; 平台phone站点上配置政务钉上对应应用的aksk;
6、手机政务钉上访问应用,进入page2页面,点击分享,将page分享出去