Как вызвать Alfresco REST API с помощью Json String? - PullRequest
1 голос
/ 23 февраля 2012

Пожалуйста, предоставьте мне некоторые ссылки для вызова WebScripts в Alfresco удаленно с использованием JSON. Alfresco имеет несколько стандартных скриптов Webscript, мне нужно вызывать эти скрипты в разных приложениях удаленно ...

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

В настоящее время я не знаю никакой документации, которая бы документировала все веб-сценарии, которые ожидают публикации JSON, а также схему, которая определяет ожидаемый JSON.Честно говоря, мы не сделали хорошую работу, чтобы определить, какие из готовых URL-адресов являются общедоступными.Некоторые из них предназначены только для использования приложением Share и могут изменяться без предупреждения.

Сказав это, вы можете перейти к http://localhost:8080/alfresco/s/index и просмотреть список веб-скриптов.И если вы детализируете веб-скрипт (щелкните по идентификатору веб-скрипта), вы сможете увидеть исходный код контроллера JavaScript или, если веб-скрипт реализован на Java, вы увидите полное имя класса, которое его реализует.Затем вы можете проверить источник, чтобы увидеть, что он ожидает.

Еще один способ сделать это - использовать Firebug или консоль разработчика вашего браузера для просмотра сетевых вызовов, которые переходят из вашего браузера на уровень репозитория.Многие из этих вызовов включают отправку JSON в веб-скрипты уровня репозитория.

0 голосов
/ 27 февраля 2012

Предполагая, что вы имеете в виду получение webscript для ответа с помощью json, есть несколько шагов.1. Создайте webscript и, возможно, установите для json формат по умолчанию (в файле определения webscript, т.е. mywebscript.get.desc.xml, добавьте тег <format default="json">argument</format>

  1. Создайте также контроллер JSON,т. е. mywebscript.get.json.js. Этот скрипт может делать две вещи:

a) получить параметр json (если вы послали json in): if (json.has('myparam')) myVar = json.get('myparam');

b) предоставить некоторые данные для модели, т.е.model.docs = companyhome.children

  1. Ваш веб-скрипт также должен отформатировать этот json для ответа json, т.е. mywebscript.get.json.ftl будет выглядеть примерно так:

    {"docs": [

    <#list docs as doc> {
    
      "name": "${doc.name}",
    
      "prop": "${doc.properties["mymodel:myprop"]}"
    
    } <#if doc_has_next>,</#if>
    
    </#list>
    

    ]

    }

...