zdppy+onlyoffice實現重命名文件的功能

參考文檔:https://api.onlyoffice.com/zh/editors/rename

步驟圖:
在這里插入圖片描述

實現步驟:
用戶在 文檔編輯器中為文檔指定一個新名稱。
文檔編輯器 將文檔的新名稱通知給 文檔管理器。
文檔管理器 將文檔的新名稱發送到 文檔存儲服務,在這里軟件集成商重命名文檔。
文檔存儲服務 將文檔的新名稱通知給 文檔編輯服務。
文檔編輯服務 將文檔的新名稱發送給每個用戶的 文檔編輯器。
現在新名稱對所有用戶可見。

注意:默認是沒有重命名的菜單的
在這里插入圖片描述

如果想要啟動重命名,必須添加如下配置:

permissions: {rename: true,}

參考文檔:https://api.onlyoffice.com/zh/editors/config/events
在這里插入圖片描述

添加如上配置以后,我們就有了重命名菜單:
在這里插入圖片描述

點擊重命名菜單,會彈出一個對話框,允許我們對文件名做修改:
在這里插入圖片描述

點擊確定,則會觸發onRequestRename事件。
在這里插入圖片描述

接下來參考文檔:https://api.onlyoffice.com/zh/editors/command
在這里插入圖片描述

我們將重命名事件改寫如下,然后進行測試:

const key = "Khirz6zTPdfd7"
const onRequestRename = (event) => {let title = event.data;console.log(event)console.log(title)axios({method: "post",url: `http://192.168.234.138:18889/coauthoring/CommandService.ashx`,data: {"c": "meta","key": key,"meta": {"title": title}}}).then(resp => {console.log("onRequestRename", resp)})
};

發生了跨域的錯誤:
在這里插入圖片描述

解決跨域的問題,只需要修改vite.config.js,配置代理即可:

import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue()],server: {proxy: {'/docserver': {target: 'http://192.168.234.138:18889', //目標urlchangeOrigin: true, //支持跨域rewrite: (path) => path.replace(/^\/docserver/, ""),//重寫路徑,替換/api},'/api': {target: 'http://192.168.234.138:18888', //目標urlchangeOrigin: true, //支持跨域rewrite: (path) => path.replace(/^\/api/, ""),//重寫路徑,替換/api}}}
})

改寫請求方法如下:


const key = "Khirz6zTPdfd7"
const onRequestRename = (event) => {let title = event.data;console.log(event)console.log(title)axios({method: "post",url: `/docserver/coauthoring/CommandService.ashx`,data: {"c": "meta","key": key,"meta": {"title": title},}}).then(resp => {console.log("onRequestRename", resp)})
};

此時報錯:
在這里插入圖片描述

跨域的問題解決了,但是出現了新的錯誤。
參考官方文檔:https://api.onlyoffice.com/zh/editors/command
錯誤碼:
在這里插入圖片描述

改寫請求方法如下:

const key = "Khirz6zTPdfd7"
const onRequestRename = (event) => {let title = event.data;console.log(event)console.log(title)axios({method: "post",url: `/docserver/coauthoring/CommandService.ashx`,data: {"c": "meta","key": key,"meta": {"title": title},token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkb2N1bWVudCI6eyJmaWxlVHlwZSI6ImRvY3giLCJrZXkiOiJLaGlyejZ6VFBkZmQ3IiwidGl0bGUiOiJFeGFtcGxlIERvY3VtZW50IFRpdGxlLmRvY3giLCJ1cmwiOiJodHRwOi8vMTkyLjE2OC4yMzQuMTM4OjE4ODg4L2Rpc3QvdGVzdC5kb2N4In0sImVkaXRvckNvbmZpZyI6eyJjYWxsYmFja1VybCI6Imh0dHA6Ly8xOTIuMTY4LjIzNC4xMzg6MTg4ODgvY2FsbGJhY2siLCJsYW5nIjoiemgtQ04iLCJ1c2VyIjp7ImlkIjoiMSIsIm5hbWUiOiJ6ZHAifSwiY3VzdG9taXphdGlvbiI6eyJmb3JjZXNhdmUiOnRydWV9LCJjb0VkaXRpbmciOnsibW9kZSI6ImZhc3QiLCJjaGFuZ2UiOnRydWV9fSwiZG9jdW1lbnRUeXBlIjoid29yZCIsImhlaWdodCI6IjUwMHB4Iiwid2lkdGgiOiIxMDAlIn0.vnSYKU22-IsBmuoSn5Po-Ukz1RrnM-G3ch3-JuJd1xg",}}).then(resp => {console.log("onRequestRename", resp)})
};

沒有令牌的問題解決了,但是出現了沒有文件秘鑰的問題:
在這里插入圖片描述

通過查詢官方文檔,key就是所謂的文檔秘鑰:
在這里插入圖片描述

現在的問題是,怎么才能拿到docserver服務中文件真實的秘鑰!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44922.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44922.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44922.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用jsencrypt在web前端對字符串進行Ras加密

話不多說&#xff0c;上代碼 實例代碼 下面方法&#xff0c;在網頁中先引入jsencrypt.min.js。然后調用ToEncrypt方法示例輸出加密&#xff0c;解密后的結果。 <script src"/js/jsencrypt.min.js"></script> //加密測試function ToEncrypt(){// 假設…

synchronized關鍵字詳解

文章目錄 synchronized使用示例實現原理鎖的升級synchronized與可見性synchronized與原子性synchronized與有序性 synchronized synchronized是Java提供的關鍵字譯為同步&#xff0c;是Java中用于實現線程同步的一種機制。它可以確保在同一時間只有一個線程能夠執行某段代碼&a…

【Python系列】數字的bool值

&#x1f49d;&#x1f49d;&#x1f49d;歡迎來到我的博客&#xff0c;很高興能夠在這里和您見面&#xff01;希望您在這里可以感受到一份輕松愉快的氛圍&#xff0c;不僅可以獲得有趣的內容和知識&#xff0c;也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

泌尿系統疾病病人的護理

一、泌尿系統疾病病人的一般護理要點 對于泌尿系統疾病的病人&#xff0c;護理是至關重要的。首先&#xff0c;要密切觀察病人的生命體征&#xff0c;包括體溫、脈搏、呼吸和血壓。 飲食方面&#xff0c;應根據病人的具體病情進行調整。例如&#xff0c;對于有水腫的病人&#…

js登陸驗證

當開始制作網頁時&#xff0c;就需要做一個判斷&#xff0c;不管在第幾頁進入&#xff0c;都要加一個登陸驗證&#xff0c;只有用戶有賬號&#xff0c;才能進入網頁&#xff0c;瀏覽網頁信息。下面就來看一下&#xff0c;使用JavaScript幾行代碼實現登陸驗證。 首先 登錄頁是i…

vue父組件樣式穿透修改子組件樣式

在 Vue 中&#xff0c;使用父組件樣式穿透到子組件通常不推薦&#xff0c;因為它破壞了樣式的作用域隔離&#xff0c;但如果你確實需要這樣做&#xff0c;可以使用深度選擇器。Vue 2 使用 ::v-deep&#xff0c;而 Vue 3 使用 /deep/ 或 ::v-deep 都可以。 以下是使用深度選擇器…

MVC之 IHttpModule管道模型《二》

》》》注意&#xff1a;在http請求的處理過程中&#xff0c;只能調用一個HttpHandler&#xff0c;但可以調用多個HttpModule。 HTTP Modules ASP.NET請求處理過程是基于管道模型的&#xff0c;這個管道模型是由多個HttpModule和HttpHandler組成&#xff0c;當請求到達HttpMod…

java-mysql-insert 操作

在 Java 中&#xff0c;使用 JDBC 插入數據到 MySQL 數據庫是非常常見的操作。以下是一個詳細的步驟&#xff0c;展示如何使用 JDBC 插入數據到 MySQL 數據庫。 ### 一、準備工作 #### 1. 下載并安裝 MySQL 如果您還沒有安裝 MySQL&#xff0c;可以從 MySQL 官方網站下載并安…

UART編程

Q:為什么使用串口前要先在電腦上安裝CH340驅動&#xff1f; 中斷的作用&#xff1f; 環形buffer的作用&#xff1f; static和valitate的作用 三種編程方式簡介 也可以通過DMA方式減小CPU資源的消耗 直接把數據在SRAM內存和UART模塊進行傳輸 &#xff0c;流程&#xff1a; …

玩家自行定制內存將古老的386 PC內存升級到64MB容量

比爾蓋茨曾說&#xff1a;“無論對誰來說&#xff0c;640K內存都足夠了。” 如果你是一個還停留在 30 針 SIMM 時代的老式電腦愛好者&#xff0c;那么你的內存升級選擇是相當有限的。不過&#xff0c;YouTube 上的一個頻道已經展示了如何將古老的 386 系統內存升級到令人"…

【AI應用探討】—對抗學習(AL)應用場景

目錄 一、圖像領域 二、自然語言處理&#xff08;NLP&#xff09; 三、安全領域 四、其他領域 五、醫療健康領域 六、游戲與娛樂領域 七、機器人與自動化領域 八、科研與教育領域 九、物聯網與邊緣計算 十、金融科技 十一、能源與環境 十二、社會科學與人文研究 十…

Linux內核編譯安裝 - Deepin,Debian系

為什么要自己編譯內核 優點 定制化&#xff1a;你可以根據自己的硬件和需求配置內核&#xff0c;去掉不必要的模塊&#xff0c;優化性能。性能優化&#xff1a;移除不需要的驅動程序和特性&#xff0c;減小內核體積&#xff0c;提高系統性能。最新特性和修復&#xff1a;獲取…

什么是開放最短路徑優先(OSPF)

OSPF是一種典型的鏈路狀態路由協議&#xff0c;一般在同一個路由域中使用。這里的路由域指的是一個自治系統&#xff08;AS&#xff09;&#xff0c;是指一組通過統一的路由策略或協議相互交換路由信息的網絡。在這個自治系統&#xff08;AS&#xff09;中&#xff0c;所有的OS…

【Leetcode】最小數字游戲

你有一個下標從 0 開始、長度為 偶數 的整數數組 nums &#xff0c;同時還有一個空數組 arr 。Alice 和 Bob 決定玩一個游戲&#xff0c;游戲中每一輪 Alice 和 Bob 都會各自執行一次操作。游戲規則如下&#xff1a; 每一輪&#xff0c;Alice 先從 nums 中移除一個 最小 元素&…

等保測評是做什么的

等保測評的定義和目的 等保測評&#xff0c;全稱為信息安全等級保護測評&#xff0c;是依據國家信息安全等級保護規范規定&#xff0c;由具有資質的測評機構對信息系統安全等級保護狀況進行檢測評估的活動。等保測評的目的是驗證網絡系統或應用是否滿足相應的安全保護等級要求…

【Linux】System V消息隊列 System V信號量

&#x1f466;個人主頁&#xff1a;Weraphael ?&#x1f3fb;作者簡介&#xff1a;目前正在學習c和算法 ??專欄&#xff1a;Linux &#x1f40b; 希望大家多多支持&#xff0c;咱一起進步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指點一二 如果文章對…

前端 JS 經典:小數運算不精確

原因&#xff1a;計算機對小數的存儲是二進制的&#xff0c;有限位數的二進制做算法得到的是有限位數&#xff0c;無限位數的二進制做運算&#xff0c;得到的是無限位數。 如下&#xff1a;0.5 和 0.25 轉二進制是有限位數&#xff0c;0.3 和 0.2 轉二進制是無限位數。 (0.5)…

Spark調度底層執行原理詳解(第35天)

系列文章目錄 一、Spark應用程序啟動與資源申請 二、DAG&#xff08;有向無環圖&#xff09;的構建與劃分 三、Task的生成與調度 四、Task的執行與結果返回 五、監控與容錯 六、優化策略 文章目錄 系列文章目錄前言一、Spark應用程序啟動與資源申請1. SparkContext的創建2. 資…

力扣1111.有效括號的嵌套深度

力扣1111.有效括號的嵌套深度 棧模擬 對于每個括號求出深度 奇數深度存入A&#xff0c;偶數深度存入B這樣最大程度降低最大深度 class Solution {public:vector<int> maxDepthAfterSplit(string s) {//因為棧中只會存(的數量 所有用一個變量即可int d 0;vector<i…

Python | Leetcode Python題解之第233題數字1的個數

題目&#xff1a; 題解&#xff1a; class Solution:def countDigitOne(self, n: int) -> int:# mulk 表示 10^k# 在下面的代碼中&#xff0c;可以發現 k 并沒有被直接使用到&#xff08;都是使用 10^k&#xff09;# 但為了讓代碼看起來更加直觀&#xff0c;這里保留了 kk,…