WOPI host消息体结构

2024-02-04 20:32
文章标签 结构 消息 host wopi

本文主要是介绍WOPI host消息体结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

wopi协议通过JSON格式传递参数:

{"AllowExternalMarketplace":{"type":"bool","default":false,"optional":true},"BaseFileName":{"type":"string","optional":false},"BreadcrumbBrandName":{"type":"string","default":"","optional":true},"BreadcrumbBrandUrl":{"type":"string","default":"","optional":true},"BreadcrumbDocName":{"type":"string","default":"","optional":true},"BreadcrumbDocUrl":{"type":"string","default":"","optional":true},"BreadcrumbFolderName":{"type":"string","default":"","optional":true},"BreadcrumbFolderUrl":{"type":"string","default":"","optional":true},"ClientUrl":{"type":"string","default":"","optional":true},"CloseButtonClosesWindow":{"type":"bool","default":false,"optional":true},"ClosePostMessage":{"type":"bool","default":false,"optional":true},"CloseUrl":{"type":"string","default":"","optional":true},"DisableBrowserCachingOfUserContent":{"type":"bool","default":false,"optional":true},"DisablePrint":{"type":"bool","default":false,"optional":true},"DisableTranslation":{"type":"bool","default":false,"optional":true},"DownloadUrl":{"type":"string","default":"","optional":true},"EditAndReplyUrl":{"type":"string","default":"","optional":true},"EditModePostMessage":{"type":"bool","default":false,"optional":true},"EditNotificationPostMessage":{"type":"bool","default":false,"optional":true},"FileExtension":{"type":"string","default":"","optional":true}, "FileNameMaxLength":{"type":"integer","default":250,"optional":true}, "FileSharingPostMessage":{"type":"bool","default":false,"optional":true},"FileSharingUrl":{"type":"string","default":"","optional":true}, "FileUrl":{"type":"string","default":"","optional":true},"HostAuthenticationId"{"type":"string","default":"","optional":true},"HostEditUrl":{"type":"string","default":"","optional":true},"HostEmbeddedEditUrl":{"type":"string","default":"","optional":true},"HostEmbeddedViewUrl":{"type":"string","default":"","optional":true},"HostName":{"type":"string","default":"","optional":true},"HostNotes":{"type":"string","default":"","optional":true},"HostRestUrl"{"type":"string","default":"","optional":true},"HostViewUrl":{"type":"string","default":"","optional":true},"IrmPolicyDescription":{"type":"string","default":"","optional":true},"IrmPolicyTitle":{"type":"string","default":"","optional":true},"LicenseCheckForEditIsEnabled":{"type":"bool","default":false,"optional":true},"OwnerId":{"type":"string","optional":false},"PostMessageOrigin"{"type":"string","default":"","optional":true},"PresenceProvider"{"type":"string","default":"","optional":true},"PresenceUserId"{"type":"string","default":"","optional":true},"PrivacyUrl":{"type":"string","default":"","optional":true},"ProtectInClient":{"type":"bool","default":false,"optional":true},"ReadOnly":{"type":"bool","default":false,"optional":true},"RestrictedWebViewOnly":{"type":"bool","default":false,"optional":true},"SHA256":{"type":"string","optional":true},"SignInUrl":{"type":"string","default":"","optional":true},"SignoutUrl":{"type":"string","default":"","optional":true},"Size":{"type":"int","optional":false},"SupportsCoauth":{"type":"bool","default":false,"optional":true},"SupportsCobalt":{"type":"bool","default":false,"optional":true},"SupportsExtendedLockLength":{"type":"bool","default":false,"optional":true},"SupportsFileCreation":{"type":"bool","default":false,"optional":true},"SupportsFolders":{"type":"bool","default":false,"optional":true},"SupportsGetLock":{"type":"bool","default":false,"optional":true},"SupportsLocks":{"type":"bool","default":false,"optional":true},"SupportsRename":{"type":"bool","default":false,"optional":true},"SupportsScenarioLinks":{"type":"bool","default":false,"optional":true},"SupportsSecureStore":{"type":"bool","default":false,"optional":true},"SupportsUpdate":{"type":"bool","default":false,"optional":true},"SupportsUserInfo":{"type":"bool","default":false,"optional":true},"TenantId"{"type":"string","default":"","optional":true},"TermsOfUseUrl":{"type":"string","default":"","optional":true},"TimeZone"{"type":"string","default":"","optional":true},"UniqueContentId":{"type":"string","default":"","optional":true},"UserCanAttend":{"type":"bool","default":false,"optional":true},"UserCanNotWriteRelative":{"type":"bool","default":false,"optional":true},"UserCanPresent":{"type":"bool","default":false,"optional":true},"UserCanRename":{"type":"bool","default":false,"optional":true},"UserCanWrite":{"type":"bool","default":false,"optional":true},"UserFriendlyName":{"type":"string","default":"","optional":true},"UserId":{"type":"string","default":"","optional":true},"UserInfo":{"type":"string","default":"","optional":true},"Version":{"type":"string","optional":false},"WebEditingDisabled":{"type":"bool","default":false,"optional":true}}

AllowExternalMarketplace: Boolean 类型,表示WOPI客户端允许连接文件中对于外部服务的引用(例如一个可以嵌入JavaSCript应用的市场),如果这个值是false,那么这个客户端则不允许建立这样的连接。

BaseFileName: 不包括路径的文件名,用来在界面(UI)中展示,同时也用来确定这个文件的拓展名。

BreadcrumbBrandName: string 类型,表示WOPI客户端向用户展示WOPI服务器的品牌。

BreadcrumbBrandUrl: 一个指向网页的统一资源表示符(URI),当用户点击BreadcrumbBrandName展示的内容时会跳转到URI指向的地址。 

BreadcrumbDocName: string 类型,表示WOPI客户端向用户展示用于表示文件的名称。

BreadcrumbDocUrl: 一个指向网页的URI,当用户点击BreadcrumbDocName会跳转到URI指向的地址。

BreadcrumbFolderName: string 类型,表示WOPI向用户展示包含这个文件的文件夹的名称,

BreadcrumbFolderUrl: 一个指向网页的URI,当用户点击BreadcrumbFolderName会跳转到URI指向的地址。

ClientUrl: 一个用户可访问的URI用于通过客户端直接打开文件,它可以是一个DAV URL([RFC5232]),也可以是其他任何能够通过传递类型从而打开文件的其他URL。

CloseButtonClosesWindow: Boolean 类型,表示当用户调用了关闭界面操作时,WOPI客户端将关闭浏览器窗口。 

ClosePostMessage: Boolean 类型,表示当用户停止渲染或者编辑客户端当前使用的文件时,向WOPI服务器发送通知。

CloseURL: 一个指向网页的URI,表示当用户停止渲染或者编辑客户端当前使用的文件时实施者认对用户有用的网页。 

DisableBrowserCachingOfUserContent: Boolean 类型,表示WOPI客户端必须禁用在浏览器中缓存文件内容。

DisablePrint: Boolean类型,表示WOPI客户端在其控制范围内必须禁用打印功能。

DisableTranslation: Boolean类型,表示是WOPI客户端必须禁止使用客户端公开的机器翻译功能。 

DownloadUrl: 一个用户可访问的指向文件的URI,用户可以通过它下载一个文件的拷贝。

EditAndReplyUrl: 一个指向网页的URI,利用WOPI客户端提供了编辑文件的体验。

EditModePostMessage: Boolean类型,表示当用户尝试编辑时,WOPI客户端需要向WOPI服务器发送通知。

EditNotificationPostMessage: Boolean类型,表示当用户尝试编辑时,WOPI客户端需要向WOPI服务器发送通知。

FileExtension: string类型,用来指定文件的扩展名,必须以“.”开头。

FileNameMaxLength: integer 类型,表示文件名的最大长度,包括文件的拓展名,由WOPI服务器提供。

FileSharingUrl: 允许用户共享文件位置的URI。

FileSharingPostMessage: Boolean类型,表示当用户视图分享文件时,WOPI客户端应该通知WOPI服务器。

FileUrl: 指向文件位置的URI,WOPI客户端使用它去获得文件,如果提供了这个地址,那么WOPI客户端必须使用它而不是使用“HTTP://server/<...>/wopi*/files/<id>/contents”。

HostAuthenticationId: string类型,用于WOPI server唯一标识用户。

HostEditUrl: 一个网页的URI,利用WOPI客户端为文件提供编辑的体验。

HostEmbeddedEditUrl: 一个网页的URI,可以嵌入另一个HTML页面并且提供文件的编辑功能。比如该页面提供了以HTML形式插入博客的HTML代码段。

HostEmbeddedViewUrl: 一个网页的URI,可以嵌入另一个HTML页面并且提供文件的预览。比如该页面提供了以HTML形式插入博客的HTML代码段。

HostName: string类型,是WOPI服务器提供的名称,用于记录日志或信息。

HostNotes: string类型,被WOPI服务器用来向WOPI客户端传递任意信息,WOPI客户端如果不能识别这个信息便有可能会忽略这个字符串。WOPI服务器不能要求WOPI客户端理解这些内容从而进行操作。

HostRestUrl: 是通过REST方式操作文件最基本的URI。

HostViewUrl: 一个利用WOPI客户端提供预览功能的URI。

IrmPolicyDescription: string类型,WOPI客户端应该向用户展示文件的信息权限管理(IRM)策略。这个值应该与IrmPolicyTitle相结合。

IrmPolicyTitle: string类型,WOPI客户端应该向用户展示文件的信息权限管理(IRM)策略。这个值应该与IrmPolicyDescription相结合。

LicenseCheckInEditIsEnabled: Boolean类型,用于确认用户在编辑文档之前有正确的许可。

OwnerId: string类型,用于唯一标识文件的所有者。

PostMessageOrigin: string类型,WOPI客户端发送[W3C-HTML5WEBMSG]所描述的信息时,一定要使用类似targetOrigin 的参数。

PresenceProvider: string类型,识别WOPI客户端可用于发现关于用户的在线状态的信息,比如通过即时的信息判断用户是否在线。WOPI客户端需要知道特定存在的提供者才能够利用这个值。

PresenceUserId: string类型,识别在PresenceProvider上下文中的用户

PrivacyUrl: 一个网页的URI,用于解释WOPI服务器的隐私策略。

ProtectInClient: Boolean类型,表示WOPI客户端需要对文件的拷贝和打印采取预防措施,它在WOPI客户端中帮助执行IRM。

ReadOnly: 提示用户这个文件无法被修改。

RestrictedWebViewOnly: Boolean类型,表示WOPI客户端一定不允许用户下载文件或者使用单独应用程序打开文件。

SHA256: 它一定是实时且非空的,是256bit的SHA-2-encoded [FIPS180-2] 对于文件内容的散列。

SignInUrl: 一个URI用于将当前用户登入WOPI服务器所支持的认证系统。

SignoutUrl: 一个URI用于将当前用户登出WOPI服务器所支持的认证系统。

Size: The size of the file expressed in bytes.

SupportsCoauth: Boolean类型,表示WOPI服务器支持多个用户同时对文件进行修改。

SupportsCobalt: Boolean类型,表示WOPI服务器支持ExecuteCellStorageRequest 和ExcecuteCellStorageRelativeRequest 的操作。

SupportsExtendedLockLength: Boolean类型,表示WOPI服务支持锁定长度为1024个ASCII字符的ID。

SupportsFileCreation: Boolean类型,表示WOPI服务器支持使用WOPI客户端创建新文件。

SupportsFolders: Boolean 类型,表示WOPI服务器支持对于文件的EnumerateChildrenDeleteFile 操作

SupportsGetLock: Boolean类型,表示WOPI服务器提供了GetLock 。

SupportsLocks: Boolean类型,表示WOPI服务器支持对于文件Lock 、Unlock 、RefreshLock 和UnlockAndRelock 操作。

SupportsRename: Boolean类型,表示WOPI服务器提供了RenameFile

SupportsScenarioLinks: Boolean类型,表示WOPI服务器支持用户可以通过有限的方式对受限制的URL进行操作的场景。

SupportsSecureStore: Boolean类型,表示WOPI服务使用存储在文件中的凭证来调用安全数据存储。

SupportsUpdate: Boolean类型,表示WOPI服务器支持对于文件的PutFile 和PutRelativeFile 操作。

SupportsUserInfo: Boolean类型,表示WOPI服务器提供了PutUserInfo

TenantId: string类型,用于WOPI服务器唯一表示tenant。

TermsOfUseUrl: 一个网页URI,用于解释WOPI服务器的使用条款政策。

TimeZone: string类型,用于以WOPI服务器选择的格式将时间区域信息传递给WOPI客户端。

UniqueContentId: string类型,用于唯一表示文件内容。当文件内容变化时这个值一定要变化。这个值也应与有相同内容的文件相同。

UserCanAttend: Boolean类型,表示用户有权限查看这个文件的广播。广播是一个文件的活动,涉及控制一组参加者的文件的视图的一个或多个呈现者。比如一个传播者能够通过广播将幻灯片广播给多个接受者。

UserCanNotWriteRelative: Boolean类型,表示用户没有足够的权限在WOPI服务器上新建文件。

UserCanPresent: Boolean类型,表示用户有权限广播这个文件给那些有权限浏览文件的人。广播是一个文件的活动,涉及控制一组参加者的文件的视图的一个或多个呈现者。比如一个传播者能够通过广播将幻灯片广播给多个接受者。

UserCanRename: Boolean类型,表示用户有权限重命名文件。

UserCanWrite: Boolean类型,表示用户有权限改变文件。

UserFriendlyName: string类型,是用户的名称,如果被锁定,WOPI客户端在某些场景可能会配置一个替代的字符串,或者展示没有名称。

UserId: string类型,用于WOPI服务器唯一标识用户。

UserInfo:string类型,WOPI客户端应该校验用户的许可状态。如果WOPI客户端没有识别内容有可能忽略这个字符串。

Version: string类型,代表基于WOPI服务器的版本模式,文件的当前版本。当文件改变时,这个值一定要改变,同时对于一个给定的文件,版本的值应该从不重复。

WebEditingDisabled: Boolean类型,表示WOPI客户端不应该允许用户使用WOPI客户端的编辑功能去操作文件,但这不意味着用户没有编辑文件的权限。

原文地址:https://msdn.microsoft.com/en-us/library/hh622920(v=office.12).aspx

这篇关于WOPI host消息体结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/678714

相关文章

Spring Boot整合消息队列RabbitMQ的实现示例

《SpringBoot整合消息队列RabbitMQ的实现示例》本文主要介绍了SpringBoot整合消息队列RabbitMQ的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录RabbitMQ 简介与安装1. RabbitMQ 简介2. RabbitMQ 安装Spring

mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据

《mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据》文章主要介绍了如何从.frm和.ibd文件恢复MySQLInnoDB表结构和数据,需要的朋友可以参... 目录一、恢复表结构二、恢复表数据补充方法一、恢复表结构(从 .frm 文件)方法 1:使用 mysq

springboot rocketmq配置生产者和消息者的步骤

《springbootrocketmq配置生产者和消息者的步骤》本文介绍了如何在SpringBoot中集成RocketMQ,包括添加依赖、配置application.yml、创建生产者和消费者,并展... 目录1. 添加依赖2. 配置application.yml3. 创建生产者4. 创建消费者5. 使用在

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque

Python中顺序结构和循环结构示例代码

《Python中顺序结构和循环结构示例代码》:本文主要介绍Python中的条件语句和循环语句,条件语句用于根据条件执行不同的代码块,循环语句用于重复执行一段代码,文章还详细说明了range函数的使... 目录一、条件语句(1)条件语句的定义(2)条件语句的语法(a)单分支 if(b)双分支 if-else(

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)

《解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)》该文章介绍了使用Redis的阻塞队列和Stream流的消息队列来优化秒杀系统的方案,通过将秒杀流程拆分为两条流水线,使用Redi... 目录Redis秒杀优化方案(阻塞队列+Stream流的消息队列)什么是消息队列?消费者组的工作方式每

使用C/C++调用libcurl调试消息的方式

《使用C/C++调用libcurl调试消息的方式》在使用C/C++调用libcurl进行HTTP请求时,有时我们需要查看请求的/应答消息的内容(包括请求头和请求体)以方便调试,libcurl提供了多种... 目录1. libcurl 调试工具简介2. 输出请求消息使用 CURLOPT_VERBOSE使用 C

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者