【问题标题】:How to use Web Script in Alfresco as a developer?作为开发人员,如何在 Alfresco 中使用 Web Script?
【发布时间】:2017-08-30 18:43:39
【问题描述】:

我是 Alfresco 的新手,正在使用 Alfresco 5.2。我开始作为 ECM 学习它,现在我可以在一定程度上理解 Share 界面。但是我需要掌握 Alfresco 作为开发人员,为此我必须掌握 Web Script。但我不确定如何朝着这个方向前进。我无法理解在哪里可以使用 Web 脚本以及它对我有何帮助。另外,我不知道如何在 Alfresco 中编写 Web Script/JavaScript 程序来执行复杂的操作。我被互联网上所有可用的文档和教程困住了。任何建议或建议都会有很大帮助。

【问题讨论】:

标签: javascript alfresco alfresco-share alfresco-webscripts web-scripting


【解决方案1】:

有两种类型的网页脚本, Java 支持和非 Java 支持,

与 Java Foundation API 相比,Javascript API 公开了更小的功能子集,Java Foundation API 可用于支持 Java 的 Web 脚本,但有一些方法可以增加向 Javascript 公开的内容或向 Javascript 公开新的自定义 API。

在某些时候有用的另一个区别是,使用 Java 支持的 webscript,您可以更好地控制使用 webscript 框架的哪些部分。例如。使用 JS 网页脚本,您总是必须为“视图”(通常是 Freemarker)使用模板,因此如果您想发回原始二进制内容流,例如,这可能会出现问题。文档或其他非​​基于文本的内容。使用 Java 支持的 webscript,您可以定义一个直接实现 WebScript 接口或使用 AbstractWebscript 而不是 DeclarativeWebscript 的类。您还可以执行其他操作,例如查看或设置请求/响应标头、cookie 或其他无法使用 Javascript 控制器访问的操作

请参考documentation

请参考blog 获取网络脚本

【讨论】:

  • 在一些文档中,它被告知使用 CURL 来测试 web 脚本。我对 CURL 的发现是,它发送请求并在命令行中显示响应,并且需要在系统中显式安装才能完成这项工作。但我可以在我的浏览器中做同样的工作。那么使用 CURL 有什么意义,相比浏览器有什么优势呢?
  • CURL 是一个服务器端进程。这意味着它将在页面呈现之前被调用,并且与客户端的功能无关。然而,浏览器库是客户端调用。这意味着它不会在客户端加载页面之前执行。如果您希望检索信息并立即将其转储给用户,那么 CURL 是您最好的选择。如果您想进行渐进式加载(转储页面,然后检索内容以“无缝”加载给用户),那么浏览器是最好的选择。
【解决方案2】:

Alfresco 通过 webscript 的 desc.xml 文件中提到的 URL 来识别 webscript。 Webscripts 用于在共享到 repo 之间交换数据。 有两种类型的 webscripts 共享(演示)和存储库(数据)webscripts。一些数据驻留在服务器(存储库)上,例如(文件或用户信息)并且您可能希望它们显示在客户端页面上,或者您可能希望将数据提交到服务器,那么将有特定的存储库端 webscript 或 API 可用来提供/接受此类数据。为此,您必须从共享到存储库 webscript 进行调用(设置通信)。欲了解更多信息,请访问http://ecmarchitect.com/alfresco-developer-series-tutorials/webscripts/tutorial/tutorial.html#what-is-the-web-script-framework

http://ecmarchitect.com/images/articles/alfresco-webscripts/web-script-article.pdf

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多