目前WPS加载项支持三种部署模式:
jsplugins.xml模式(oem.ini中配置JsApiPlugin和JSPluginsServer) publish模式 jsplugins.xml动态传递模式(唤起WPS的方法InvokeAsHttp中传递jsplugins.xml的地址,InvokeAsHttp方法发起的ajax请求的地址是/transfer/runprams或者/transferEx/runparams)
在客户集成WPS加载项过程中,遇到问题需要排查时,我们需要确认客户使用WPS加载项的哪种部署模式去部署的加载项。然后才能继续后面的排查。
WPS加载项的三种部署模式可以同时存在的,有可能客户会同时使用多种部署模式,但是不推荐使用多种部署模式的情况,主要有两点: 1.同时使用多个加载项,可能会出现加载项中对事件和WPS自身按钮控制冲突 2.多种模式间的加载项名称容易冲突,导致加载项无法加载
去客户本机地址中找jsaddons目录,看看该目录下是否存在publish.xml,只要有publish.xml,就说明使用了publish模式
查看oem.ini,看看该目录下是否存在JsApiPlugin和JSPluginsServer:
1. 如果有JsApiPlugin=true,则说明是开启了jsplugins.xml模式, 2. 然后再去看看JSPluginsServer是否有配置url地址,如果有配置,则说明客户会根据这个url地址去拉取jsplugins.xml文件 3. 去客户本机地址中找jsaddons目录,看看该目录下是否存在jsplugins.xml
1. jsplugins.xml模式所有的排查都是基于oem.ini中有配置了JsApiPlugin=true,如果没有配置,那么后续的排查都不需要。 2. JSPluginsServer不是必须的,只要配置了JsApiPlugin=true,且jsaddons目录中有jsplugins.xml文件,那么jsplugins.xml模式也是生效的。
a. 打开OA唤起WPS的浏览器界面,按f12,并找到network
b. 搜索唤起WPS的请求transfer/runparams(单进程)或者transferEx/runparams(多进程)
c. 将该请求的data参数://后面的数据复制出来
d. 将调试器切换到console中,并且输入`window.atob("粘贴复制出来的内容")`,然后回车
e. 查看解析出来的数据中,jsPluginsXml中是否有传递jsplugins.xml的url地址
场景
目前WPS加载项支持三种部署模式:
jsplugins.xml模式(oem.ini中配置JsApiPlugin和JSPluginsServer)
publish模式
jsplugins.xml动态传递模式(唤起WPS的方法InvokeAsHttp中传递jsplugins.xml的地址,InvokeAsHttp方法发起的ajax请求的地址是/transfer/runprams或者/transferEx/runparams)
在客户集成WPS加载项过程中,遇到问题需要排查时,我们需要确认客户使用WPS加载项的哪种部署模式去部署的加载项。然后才能继续后面的排查。
解决方案
publish模式
去客户本机地址中找jsaddons目录,看看该目录下是否存在publish.xml,只要有publish.xml,就说明使用了publish模式
jsplugins.xml模式
查看oem.ini,看看该目录下是否存在JsApiPlugin和JSPluginsServer:
1. 如果有JsApiPlugin=true,则说明是开启了jsplugins.xml模式, 2. 然后再去看看JSPluginsServer是否有配置url地址,如果有配置,则说明客户会根据这个url地址去拉取jsplugins.xml文件 3. 去客户本机地址中找jsaddons目录,看看该目录下是否存在jsplugins.xml
注意事项
1. jsplugins.xml模式所有的排查都是基于oem.ini中有配置了JsApiPlugin=true,如果没有配置,那么后续的排查都不需要。 2. JSPluginsServer不是必须的,只要配置了JsApiPlugin=true,且jsaddons目录中有jsplugins.xml文件,那么jsplugins.xml模式也是生效的。
jsplugins.xml动态传递模式(它不需要在oem.ini中配置JsApiPlugin=true)
a. 打开OA唤起WPS的浏览器界面,按f12,并找到network
b. 搜索唤起WPS的请求transfer/runparams(单进程)或者transferEx/runparams(多进程)
c. 将该请求的data参数://后面的数据复制出来
d. 将调试器切换到console中,并且输入`window.atob("粘贴复制出来的内容")`,然后回车
e. 查看解析出来的数据中,jsPluginsXml中是否有传递jsplugins.xml的url地址
📋 章节目录
场景 解决方案 publish模式 jsplugins.xml模式 注意事项 jsplugins.xml动态传递模式(它不需要在oem.ini中配置JsApiPlugin=true)