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

相关文章

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

MySQL中的索引结构和分类实战案例详解

《MySQL中的索引结构和分类实战案例详解》本文详解MySQL索引结构与分类,涵盖B树、B+树、哈希及全文索引,分析其原理与优劣势,并结合实战案例探讨创建、管理及优化技巧,助力提升查询性能,感兴趣的朋... 目录一、索引概述1.1 索引的定义与作用1.2 索引的基本原理二、索引结构详解2.1 B树索引2.2

如何使用Maven创建web目录结构

《如何使用Maven创建web目录结构》:本文主要介绍如何使用Maven创建web目录结构的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录创建web工程第一步第二步第三步第四步第五步第六步第七步总结创建web工程第一步js通过Maven骨架创pytho

Python循环结构全面解析

《Python循环结构全面解析》循环中的代码会执行特定的次数,或者是执行到特定条件成立时结束循环,或者是针对某一集合中的所有项目都执行一次,这篇文章给大家介绍Python循环结构解析,感兴趣的朋友跟随... 目录for-in循环while循环循环控制语句break语句continue语句else子句嵌套的循

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

SpringCloud整合MQ实现消息总线服务方式

《SpringCloud整合MQ实现消息总线服务方式》:本文主要介绍SpringCloud整合MQ实现消息总线服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、背景介绍二、方案实践三、升级版总结一、背景介绍每当修改配置文件内容,如果需要客户端也同步更新,

Python+PyQt5实现文件夹结构映射工具

《Python+PyQt5实现文件夹结构映射工具》在日常工作中,我们经常需要对文件夹结构进行复制和备份,本文将带来一款基于PyQt5开发的文件夹结构映射工具,感兴趣的小伙伴可以跟随小编一起学习一下... 目录概述功能亮点展示效果软件使用步骤代码解析1. 主窗口设计(FolderCopyApp)2. 拖拽路径

一文带你搞懂Redis Stream的6种消息处理模式

《一文带你搞懂RedisStream的6种消息处理模式》Redis5.0版本引入的Stream数据类型,为Redis生态带来了强大而灵活的消息队列功能,本文将为大家详细介绍RedisStream的6... 目录1. 简单消费模式(Simple Consumption)基本概念核心命令实现示例使用场景优缺点2

Redis消息队列实现异步秒杀功能

《Redis消息队列实现异步秒杀功能》在高并发场景下,为了提高秒杀业务的性能,可将部分工作交给Redis处理,并通过异步方式执行,Redis提供了多种数据结构来实现消息队列,总结三种,本文详细介绍Re... 目录1 Redis消息队列1.1 List 结构1.2 Pub/Sub 模式1.3 Stream 结