Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js WOPI节点、express、react集成_Node.js_Reactjs_Express_Ms Wopi - Fatal编程技术网

Node.js WOPI节点、express、react集成

Node.js WOPI节点、express、react集成,node.js,reactjs,express,ms-wopi,Node.js,Reactjs,Express,Ms Wopi,有谁能指导我如何为MERN Stack实现WOPI吗?我正在努力实现它 我正在努力的是: 验证WOPI证明 实现请求头 根据WOPI集成文档,基本上您只需要少量基本成分: 注册为某个开发领域 您将用于开发,以后可能用于 生产。比如*.whatewercompany.com。微软将 将此域列为白名单,这样您就可以与它进行对话 来自该域的office online 构建WOPI主机。在您的情况下,这将是后端的节点应用程序 这需要根据实现不同的REST端点。您不需要所有这些,因此只需从以下几点开始:

有谁能指导我如何为MERN Stack实现WOPI吗?我正在努力实现它

我正在努力的是:

  • 验证WOPI证明

  • 实现请求头


根据WOPI集成文档,基本上您只需要少量基本成分:

  • 注册为某个开发领域 您将用于开发,以后可能用于 生产。比如*.whatewercompany.com。微软将 将此域列为白名单,这样您就可以与它进行对话 来自该域的office online
  • 构建WOPI主机。在您的情况下,这将是后端的节点应用程序 这需要根据实现不同的REST端点。您不需要所有这些,因此只需从以下几点开始: 选中FileInfo和GetFile,这将为您提供仅查看功能 然后转到更复杂的锁,解锁, 解锁并锁定、刷新锁定和PutFile,这将为您提供编辑功能 能力。我使用C#示例实现作为参考 . 我只是用java和Spring框架重写了它,所以我建议 类似的方法,因为代码非常简单,而且 记录了大量的注释和评论
  • 在开始时尽可能多地参考WOPI文件 抽象和复杂,但当您开始实现端点时,它将使 更有意义的是,在几天的工作中,它将开始变得有意义
  • 构建WOPI主机页。提到可能是 只是另一个返回页面的nodejs端点。那一页是 简单,它基本上是office online action iframe的主机。 OFFICE_ONLINE_ACTION_URL在查看docx文件时将被删除
  • 所以在最后一步中,我给了您查看.docx文件的url,但您需要什么url 需要调用view.pptx或.xlsx或编辑它们。这给你带来了什么 到WOPI发现概念,您在其中了解到此url不同于 每个操作,如:查看、编辑、编辑新建和扩展文档。总之你 需要调用parse xml响应和 根据用户需要,动态地从一个url切换到另一个url 打开Word或PowerPoint,或者如果他想在视图或 编辑建议缓存并每12小时刷新一次
  • 如果要增强安全性,需要验证请求是否正确 实际来源于office online且已签署 正确地这是我最后一次做的事情之一,只是为了让它100% 与Microsoft验证测试兼容,但您可以查看和编辑 没有它也行。当您到达这里时,请注意,在步骤4的xml末尾,您有这个验证所需的证明密钥。下面是一些使用不同语言C#、Java、Python的示例,在nodejs中使用这些语言应该不是一项很好的任务
  • 使用WOPI交互式应用程序测试您的WOPI实现 期待你在那里看到的所有绿色图标。这沸腾了 具体到 (注意,这应该返回一个名为whatewer.wopitest的文件 这将用于验证)。您最好调用主机页,主机页反过来调用此url以验证称为HostFrameIntegration的第一批测试。我建议你阅读以获得更好的想法

  • 注意,我还试图在git或其他地方找到示例应用程序,而不是从头开始实现所有功能,但找不到任何看起来不错的应用程序,最后也没花那么长时间。总而言之,如果您参考示例C#应用程序以及WOPI文档和我在这里介绍的步骤,您就可以开始了。

    基本上,根据WOPI集成文档,您需要一些基本成分:

  • 注册为某个开发领域 您将用于开发,以后可能用于 生产。比如*.whatewercompany.com。微软将 将此域列为白名单,这样您就可以与它进行对话 来自该域的office online
  • 构建WOPI主机。在您的情况下,这将是后端的节点应用程序 这需要根据实现不同的REST端点。您不需要所有这些,因此只需从以下几点开始: 选中FileInfo和GetFile,这将为您提供仅查看功能 然后转到更复杂的锁,解锁, 解锁并锁定、刷新锁定和PutFile,这将为您提供编辑功能 能力。我使用C#示例实现作为参考 . 我只是用java和Spring框架重写了它,所以我建议 类似的方法,因为代码非常简单,而且 记录了大量的注释和评论
  • 在开始时尽可能多地参考WOPI文件 抽象和复杂,但当您开始实现端点时,它将使 更有意义的是,在几天的工作中,它将开始变得有意义
  • 构建WOPI主机页。提到可能是 只是另一个返回页面的nodejs端点。那一页是 简单,它基本上是office online action iframe的主机。 OFFICE_ONLINE_ACTION_URL在查看docx文件时将被删除
  • 所以在最后一步中,我给了您查看.docx文件的url,但您需要什么url 需要调用view.pptx或.xlsx或编辑它们。这给你带来了什么 到WOPI发现概念,您在其中了解到此url不同于 每个操作,如:查看、编辑、编辑新建和扩展文档。总之你 需要调用parse xml响应和 根据用户需要,动态地从一个url切换到另一个url 打开Word或PowerPoint,或者如果他想在视图或 编辑建议缓存并每12小时刷新一次
  • 如果要增强安全性,需要验证请求是否正确 实际来源于office online且已签署 正确地这是我最后一次做的事情之一,只是为了让它100% 与Microsoft验证测试兼容,但您可以查看和编辑 没有它也行。当您到达这里时,请注意,在步骤4的xml末尾,您有这个验证所需的证明密钥。这里有一些