Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ONLYOFFICE协作编辑页面中文档下载地址url携带(传输)sessionid测试

ONLYOFFICE协作编辑页面中文档下载地址url携带(传输)sessionid测试

作者头像
hotqin888
发布于 2018-10-08 09:12:05
发布于 2018-10-08 09:12:05
1.8K00
代码可运行
举报
文章被收录于专栏:hotqin888的专栏hotqin888的专栏
运行总次数:0
代码可运行

onlyoffice协作页面里有个文档下载地址,这个地址是第一个人打开这个文档的时候,服务器会根据这个文档地址,将文档管理服务器里的文档下载到onlyoffice document server的内存中,第二个人打开就直接用key打开了……

问题是,这个文档地址,如何确权呢,因为onlyoffice在请求这个地址的时候,估计请求头里没有带sessionid,所以即使用户登录了,文档无服务器端也无法取得用户的登录信息。

将这个文档地址,带上sessionid就行了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"document": {
          "fileType": "{{.fileType}}",
          "key": "{{.Key}}",//"Khirz6zTPdfd7"
          "title": "{{.Doc.FileName}}",
          "url": "http://192.168.99.1/attachment/onlyoffice/{{.Doc.FileName}}?hotqinsessionid={{.Sessionid}}",
          "info": {

这样,在文档服务器端,可以直接取得用户登录名了。

beego:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//用户登录后,服务器端将信息写入session
func (c *LoginController) LoginPost() {
	if err == nil {
		c.SetSession("uname", user.Username)
		c.SetSession("pwd", user.Password)
…………

//浏览器请求下载文档
func (c *AttachController) Attachment() {
	var useridstring string
	_, _, uid, isadmin, _ := checkprodRole(c.Ctx)
	// if uid != 0 {
	useridstring = strconv.FormatInt(uid, 10)

//根据请求携带的sessionid获取用户登录信息
func checkprodRole(ctx *context.Context) (uname, role string, uid int64, isadmin, islogin bool) {
	v := ctx.Input.CruSession.Get("uname")

当然,官方推荐的是token方式。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年09月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用beego进行onlyoffice document server的二次开发
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/details/79293263
hotqin888
2018/09/11
1.7K0
ONLYOFFICE权限开发之二
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/details/79941919
hotqin888
2018/09/11
6540
ONLYOFFICE权限开发之二
如何在 Windows 上 使用 ONLYOFFICE 协作编辑文档「建议收藏」
ONLYOFFICE Document Server提供文档协作的服务功能,支持Word,Excel和PowerPoint以及国产WPS的协作。但是这里告诉我们,需要进行文档管理和存储的二次开发。它api里现成的开发好的文档管理平台,有java,node.js,PHP等,可能不具备权限功能吧。
全栈程序员站长
2022/07/23
4.3K0
如何在 Windows 上 使用 ONLYOFFICE 协作编辑文档「建议收藏」
ONLYOFFICE文档转换开发技术
onlyoffice具有文档转换的功能,就是你给一个文档的地址,以及一些参数,post给document server,它会转换成你要的,然后返回一个文件地址,你收到这个地址,把文件下载下来保存,提供用户下载。
hotqin888
2019/08/14
2.3K0
SpringBoot集成onlyoffice实现word文档编辑保存
onlyoffice为一款开源的office在线编辑组件,提供word/excel/ppt编辑保存操作
code2roc
2023/07/19
2.1K0
Golang 语言 Web 框架 beego v2 之控制器方法和输入输出数据
创建 beego 的控制器,首先要匿名组合 beego.Controller,beego.Controller实现了接口 beego.ControllerInterface,beego.ControllerInterface 定义了许多函数,这样我们创建的控制器就有了所有 beego.Controller 的方法,我们可以重写这些方法实现自己的业务逻辑。
frank.
2020/12/08
1.1K0
菜鸟浅谈——web安全测试
2)在挖漏洞挣外快时,注意不要使用安全扫描或暴力破解软件对上线网站进行扫描或攻击。不要对上线网站造成破坏,不要去获取网站的数据库信息等。否则等待的不是money,而是牢狱啦~~
顾翔
2020/09/23
1.4K0
菜鸟浅谈——web安全测试
【软件开发规范四】《应用系统安全编码规范》
为落实《信息安全策略》的要求,有效加强应用系统安全管理,提升应用系统安全编码能力,指导开发团队有效进行应用系统安全编码,特制定本规范。
再见孙悟空_
2023/09/19
1.5K0
如何在 Windows 上 使用 ONLYOFFICE 协作编辑文档
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/details/79337881
hotqin888
2018/09/11
3.5K0
如何在 Windows 上 使用 ONLYOFFICE 协作编辑文档
Session、Cookie、Token 【浅谈三者之间的那点事】
HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session 和 Cookie 的主要目的就是为了弥补 HTTP 的无状态特性。
IT茂茂
2020/09/24
22.4K1
Session、Cookie、Token 【浅谈三者之间的那点事】
一文搞懂Cookie、Session、Token、JWT
在Web开发中,身份验证和会话管理是核心功能。本文将详细介绍Cookie、Session、Token和JWT这四种常用的技术,以及它们的使用场景和优缺点。
用户11397231
2024/12/23
4790
一文搞懂Cookie、Session、Token、JWT
session,cookie和token究竟是什么,一文搞懂!
cookie,session,token作为面试必问题,很多同学能答个大概,但是又迷糊不清,希望本篇文章对大家有所帮助
CODER-V
2023/03/04
2.8K0
session,cookie和token究竟是什么,一文搞懂!
Swift-MVVM 简单演练(二)
Swift-MVVM 简单演练(一) Swift-MVVM 简单演练(三) Swift-MVVM 简单演练(四) 处理下拉刷新逻辑 根据接口文档,下拉刷新是返回ID比since_id大的微博(即比since_id时间晚的微博)。因此,我们需要在网络请求方法里增加两个参数。since_id和max_id,分别对应下拉刷新所需参数和上拉加载所需参数。 既然要修改网络请求方法,当然是从我们自己抽取的HQNetWorkManager+Extension和HQStatusListViewModel这两个地方入手考虑。
用户1890628
2018/05/10
2.4K0
渗透测试XSS漏洞原理与验证(1)——会话管理
HTTP是一种无状态协议,一次请求结束,客户端与服务端的连接就会断开,服务器再次收到请求时,无法识别此次请求是哪个用户发过来的,需要重新建立连接。为了判断发送请求的用户,需要一种记录用户的方式,也就是Web应用会话管理。
zhouzhou的奇妙编程
2024/10/08
1680
搭建dedecms漏洞靶场练习环境
本文将对dedecms(织梦cms)所存在的漏洞进行分析和复现,因为代码审计较弱,代码这一块的分析借鉴了一些大佬们的思想,在这里对大佬们表示衷心的感谢。
HACK学习
2021/06/24
12.5K1
搭建dedecms漏洞靶场练习环境
HydroCMS完成Ip地址段的权限设计
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/details/51472738
hotqin888
2018/09/11
6330
「Go工具箱」web中的session管理,推荐使用gorilla/sessions包
大家好,我是渔夫子。本号新推出「Go工具箱」系列,意在给大家分享使用go语言编写的、实用的、好玩的工具。同时了解其底层的实现原理,以便更深入地了解Go语言。
Go学堂
2023/01/31
7510
通达OAの漏洞合集
两三个月之前实习的时候通达OA的漏洞学习笔记,赶紧发了清一下库存,免得文件夹吃灰。
h0cksr
2023/05/18
5.8K0
Onlyoffice不打开文档的情况下下载正在编辑的文档
文档管理平台上列表显示了文档,假如一个文档有人已经打开了在编辑,而正在编辑的文档由于未触发保存机制,所以文档管理系统里存在硬盘的文档是旧的。此时,其他用户也进入这个管理平台,想下载这个文件,一般是只能下载管理平台系统里存的文档。想下载最新的OO服务器内存中的最新的文件,就要有key,和发送一个请求过去。如下:
hotqin888
2020/04/12
1.5K0
10.Django基础八之cookie和session
我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应。例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器了。从双方接通电话那一刻起,会话就开始了,到某一方挂断电话表示会话结束。在通话过程中,你会向10086发出多个请求,那么这多个请求都在一个会话中。 客户向某一服务器发出第一个请求开始,会话就开始了,直到客户关闭了浏览器会话结束。
changxin7
2019/09/30
8740
10.Django基础八之cookie和session
推荐阅读
相关推荐
用beego进行onlyoffice document server的二次开发
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验