当前位置:   article > 正文

onlyoffice7.5.1 jsApi调用 进阶二次开发 连接器开发 api操作office文档 demo可直接运行测试_onlyoffice 连接器开发

onlyoffice 连接器开发

office这个体系分为四个大教程

1、【document server文档服务器基础搭建】

2、【连接器(connector)或者jsApi调用操作office】-进阶

3、【document builder文档构造器使用】-进阶

4、【Conversion API(文档转化服务)】-进阶

 如果需要连接器,可以查看【镜像需要付费购买嘿嘿】onlyofficeV7.5.1 jsApi调用 进阶开发 二次开发 连接器(connector)开发 - 知乎 (zhihu.com)

一、首先部署基础环境

比如:

http://47.94.91.67:10100/web-apps/apps/api/documents/api.js

二、连接器介绍

        当你到达这一步,说明需要通过jsApi操作一下word或者excel之类的,官方提供了jsApi的调用通道比如:ONLYOFFICE Api Documentation - Automation API

        官方称之为connector(连接器),但是呢:【收费】而且很贵。所以接下来我做一个搭建了个体验服务器,提供给大家研究和学习使用。

        Api文档:ONLYOFFICE Api Documentation - GetRangeBySelect

        【图一】是参照示例,builder不需要使用,builder属于文档生成器,后面有专门的文档做说明,这里只需要参照中间【红框】部分即可。

图一

        【图二】是大目录说明

图二

三、demo试用

        该demo为word,【获取选中的文字

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <script type="text/javascript" src="http://47.94.91.67:10100/web-apps/apps/api/documents/api.js"></script>
  7. <style>
  8. body {
  9. width: 100%;
  10. height: 90vh;
  11. display: flex;
  12. flex-direction: column;
  13. }
  14. #placeholder {
  15. width: 100%;
  16. height: 100vh;
  17. }
  18. </style>
  19. </head>
  20. <body>
  21. <button class="" onclick="callCommand()">先选中文字,再点击按钮</button>
  22. <div id="placeholder" class="nav" style="width: 100%; height: 100vh;"></div>
  23. </body>
  24. <script>
  25. var insertText = '输入一段字符串';
  26. function callCommand() {
  27. connector.callCommand(function() {
  28. console.log('点击了文档');
  29. var oDocument = Api.GetDocument();
  30. var oRange = oDocument.GetRangeBySelect();
  31. if(oRange == null){
  32. alert('请先选中文字');
  33. }
  34. console.log(oRange.GetText());
  35. oRange.AddText("插入文字");
  36. oRange.SetHighlight('yellow');
  37. }, function() { console.log("callback command"); });
  38. }
  39. var onDocumentReady = function () {
  40. console.log("文档准备好了");
  41. window.connector = docEditor.createConnector();
  42. connector.attachEvent("onChangeContentControl", function(){
  43. console.log("event: onChangeContentControl");
  44. });
  45. Asc.scope.text = "Hello world!";
  46. connector.callCommand(function() {
  47. var oDocument = Api.GetDocument();
  48. var oParagraph = Api.CreateParagraph();
  49. oParagraph.AddText(Asc.scope.text);
  50. oDocument.InsertContent([oParagraph]);
  51. }, function() { console.log("callback command"); });
  52. };
  53. var config = {
  54. "documentType": "word",
  55. "historyList": {
  56. "history": [],
  57. "currentVersion": "1"
  58. },
  59. "document": {
  60. "title": "【经营】通用合同模板.docx",
  61. "url": "https://d2nlctn12v279m.cloudfront.net/assets/docs/samples/zh/demo.docx",
  62. "permissions": {
  63. "print": false,
  64. "download": true
  65. },
  66. "attachId": "e932e7bb1e4d449aa9a7d8b403b4b517",
  67. "fileType": "docx",
  68. "key": "e932e7bb1e4d449aa9a7d8ss517"
  69. },
  70. "editorConfig": {
  71. "customization": {
  72. "autosave": false,
  73. "compactToolbar": true,
  74. "forcesave": true,
  75. "toolbarNoTabs": true,
  76. "help": false,
  77. "compactHeader": true,
  78. "hideRightMenu": true,
  79. },
  80. "mode": "edit",
  81. "callbackUrl": "https://www.onlyoffice.com/post.ashx?type=editor-callback",
  82. "lang": "zh-CN",
  83. "user": {
  84. "name": "当前用户",
  85. "id": "103"
  86. }
  87. }
  88. };
  89. var docEditor;
  90. initDocEditor();
  91. /**
  92. * 初始化编辑器
  93. */
  94. function initDocEditor() {
  95. // 初始化配置
  96. config['events'] = {
  97. onDocumentReady: onDocumentReady
  98. };
  99. docEditor = new DocsAPI.DocEditor("placeholder", config);
  100. }
  101. </script>
  102. </html>

四、结语

        如果你需要更多功能,可以直接V一下cao_rui_jian_xiong

        因为jsApi调用属于二开,所以docker镜像需要购买一下,但是也很便宜,编译版本200

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/476218
推荐阅读
相关标签
  

闽ICP备14008679号