欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > onlyoffice Command service(命令服务)使用示例

onlyoffice Command service(命令服务)使用示例

2024/11/19 5:17:17 来源:https://blog.csdn.net/lz610756247/article/details/143758734  浏览:    关键词:onlyoffice Command service(命令服务)使用示例

一、说明

        文档在这里:https://api.onlyoffice.com/docs/docs-api/additional-api/command-service/
        命令服务提供有几个简单的接口封装。也提供了前端和后端同时操作文档的可能

二、正文

        命令服务地址:https://documentserver/coauthoring/CommandService.ashx

        其中,https://documentserver是你自己部署的onlyoffice地址,比如我的服务是:http://47.94.91.67:10100,按照上面的拼写,最终得到结果:

http://47.94.91.67:10100/coauthoring/CommandService.ashx

        参数采用post-json传递。

三、示例

这里举一个forcesave例子:

        1、比如:Command service -> forcesave

                强制保存这个服务,可以在前端打开文档的同时,通过后端直接触发保存操作,并且双向不影响;

        2、此时前端文档的key为:config.document.key = 'aaa'

        3、并且此时前端同时应该设置autosave为:config.editorConfig.customization.autosave = true

        4、使用post-json方式调用命令服务,地址为:http://47.94.91.67:10100/coauthoring/CommandService.ashx,参数为:

               {
                        "c": "forcesave",
                          "key": "aaa",
                          "userdata": "sample userdata"
                }

        5、请检查【4】中的【key】与【2】中的【key】,必须一致

四、常见问题&错误提示

0No errors.
1Document key is missing or no document with such key could be found.
2Callback url not correct.
3Internal server error.
4No changes were applied to the document before the forcesave command was received.
5Command not correct.
6Invalid token.

这里重点讲一下 error = 1 的报错:Document key is missing or no document with such key could be found.

在样例中使用到了参数传递:key: aaa

{
         "c": "forcesave",
          "key": "aaa",
           "userdata": "sample userdata"
}

        这里的key必须是已经在onlyoffice服务中打开/存储过的key,也就是必须使用config.document.key = 'aaa'来打开过文档,这个key到底是什么,请再仔细阅读下配置文档说明。

        如果服务没有打开/存储过该key,就会报error=1。

        引申:

                only在docker部署下,如果容器重新部署,key会丢失。

                实际业务如果采用动态key,那么需要设计好规则或者关联,保证前/后端的key相同。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com