Aikau example定义了以下内容:
{
name: "alfresco/forms/controls/DojoSelect",
config: {
label: "List Type",
name: "prop_dl_dataListItemType",
value: "dl:event",
optionsConfig: {
publishTopic: "ALF_GET_FORM_CONTROL_OPTIONS",
publishPayload: {
url: url.context + "/proxy/alfresco/api/classes/dl_dataListItem/subclasses",
itemsAttribute: "",
labelAttribute: "title",
valueAttribute: "name"
}
}
}
}
注意url.context
。我没有在示例源中找到任何url
定义。似乎url
隐式初始化了某个地方。但到底在哪里?其他字段/方法url
对象有哪些?
答案 0 :(得分:1)
Aikau将在service.js文件上构建URL。
例如,您可以查看CRUDService.js文件并参考getUrlFromPayload
方法,此方法称为,
onGetAll: function alfresco_services_CrudService__onGetAll(payload) {
var url = this.getUrlFromPayload(payload); .... }
并将传递请求对象,以发出请求。
希望这对你有所帮助。
答案 1 :(得分:1)
url对象在WebScripts的所有JavaScript控制器中都可用。它是为方便起见而提供的众多内置对象之一(其他包括"远程"和#34;用户"例如)。 url.context将配置为正在运行的应用程序的上下文。通常,返回的值将是" share" (因为这是默认的应用程序上下文)。
在定义共享层(即/ share / services / ...)或存储库层(即/ share / proxy / alfresco / ...)上定义的API的URL时,通常需要应用程序上下文。
应该使用url.context,因为可以将应用程序配置为具有备用上下文根,因此最好编写一个Surf可以为您处理的内容。
Surf和WebScripts已经存在了比Aikau更长的时间,但遗憾的是他们缺乏良好的文档。
支持url对象的Java类是" org.springframework.extensions.webscripts.DefaultURLHelper" (扩展" org.springframework.extensions.webscripts.URLHelper")。其他可用的属性包括: