【问题标题】:How can I handle JSON response in Moqui inside a transition?如何在转换中处理 Moqui 中的 JSON 响应?
【发布时间】:2015-03-05 00:25:09
【问题描述】:

我实际上是在进行 JSON-RPC 调用以从 AngularJS 进行转换。由于请求的内容类型是application/json,因此输入参数会自动在上下文中可用,因此我不需要显式处理。

这是我对 'tutorial' 组件中的 'getUsers' 的请求。

function($scope, $http) {
    $http ({
        url: 'tutorial/getUsers',
        method: "POST",
        data: JSON.stringify({username:'demouser1'}),
        headers: {'Content-Type': 'application/json'}

    }).success(function(response){
        $scope.userList = response;
    });
}]);

转场的代码写在下面

<transition name="getUsers">
    <actions>
         <service-call name="Tutorial.PartyServices.get#Users" in-map="context"/>
    </actions>
    <default-response type="none"/>
</transition>

服务看起来像这样

<service verb="get" noun="Users">
    <in-parameters>
        <parameter name="username"/>
    </in-parameters>
    <actions>
        <entity-find entity-name="PersonAndUserAccount" list="userList">
            <search-form-inputs default-order-by="firstName,lastName,username"/>
            <econdition field-name="username" operator="equals" to-field-name="username"/>
        </entity-find>
        <script>ec.web.sendJsonResponse(userList)</script>
    </actions>
</service>

现在要发送 JSON 响应,我在服务本身中写了 ec.web.sendJsonResponse(userList)。这使得服务与期望 JSON 作为响应的服务调用紧密耦合。如果我想在内部调用此服务,即在 Moqui 中,我必须定义另一个服务。

所以我的问题是我可以在进行此服务调用的过渡中处理此响应吗?

【问题讨论】:

    标签: moqui


    【解决方案1】:

    这是可用于在转换中提及 JSON 响应的示例。可以参考 ExampleApp.xml。

    这里是代码 sn-p 供您参考。

    <transition name="ExampleEntity" method="post">
        <service-call name="org.moqui.example.ExampleServices.createExample" in-map="ec.web.parameters"
            web-send-json-response="true"/>
    <default-response type="none"/>
    </transition>
    

    HTH。

    谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-06
      • 1970-01-01
      • 2013-05-09
      • 2017-02-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多