Alfresco - 从服务器端获取 URL JavaScript

Alfresco - Getting the URL from server-side JavaScript

我正在尝试在 Alfresco 中创建一个新页面,但教程向我提供了创建三个文件的信息:new-page.get.jsnew-page.html.ftlnew-page.get.xml , 比如 Aikau - http://docs.alfresco.com/5.0/concepts/dev-extensions-share-page-creation.html

但是 javascript 是不同的,例如,我尝试使用 window.location.searchconsole.logalert 来获取当前的 URL。但是,在这三种情况下,我得到了 "undefined" 就像 "window is undefined"

这 javascript 为什么不同? javascript 是什么类型?我在哪里可以获得教程,例如,对 javascripts?

进行编程

我想制作一个 window.location.search 来获取当前的 URL ,但是如果我没有这个命令,我可以用什么来实现这个效果?

JavaScript没有区别,language itself还是一样。

windowconsolealert 只是浏览器提供的 API。它们不是 JavaScript.

的原生部分

您链接到的文档应该是您了解哪些 API 可用的起点。

通常情况下,Alfresco 方式不会获取原始 URL。相反,您应该使用内置参数 processing

由于Alfresco本身是开源的,我们可以看看Alfresco的一些例子!因此,从 groups get webscript 开始,我们看到 URL 模式定义为:

<url>/api/groups?shortNameFilter={shortNameFilter?}&zone={zone?}&maxItems={maxItems?}&skipCount={skipCount?}&sortBy={sortBy?}</url>

由此,我们在 URL 上看到了一大堆预定义参数。

接下来,我们查看 javascript controller behind that webscript,我们会看到如下内容:

var shortNameFilter = args["shortNameFilter"];
var zone = args["zone"];

然后,这些 URL 参数将被解析到您的 args 变量中的网络脚本中,供您以哈希形式获取。

无需对自己进行任何原始 URL 修改,如果您正确定义了 webscript,框架会为您完成所有工作!

您可以通过

在 Javascript 网络脚本(在后端)中获取服务器 URL
var path = url.getServer()

http://localhost:8080 将返回例如

这是 list of available 方法 - 您可以将它们连接起来以获得直接 URL: