来自Android的Loopback自定义方法调用

时间:2014-11-23 10:06:40

标签: android loopbackjs strongloop

我正在寻找可以从Android调用loopback的自定义方法的示例。为了解释更多,假设我在服务器端有一个名为“greet(name)”的方法,它将迎接某人。我想从Android调用它。任何例子或链接都可以。

提前致谢。

Jahid

1 个答案:

答案 0 :(得分:5)

在下面的示例中,我假设您的模型名为Greeter,静态方法Greeter.greet通过GET /greeters/greet?name=Alex调用。

首先,您需要描述方法的REST映射。然后,您可以使用invokeMethod调用该方法。

public class GreeterRepository extends ModelRepository<Greeter> {
    public RestContract createContract() {
      RestContract contract = super.createContract();

      contract.addItem(new RestContractItem("/" + getNameForRestUrl() + "/greet", "POST"),
                  getClassName() + ".greet");

      return contract;
    }

    public void greet(name, final VoidCallback callback) {
        invokeStaticMethod("greet", ImmutableMap.of("name", name), new Adapter.Callback() {

            @Override
            public void onError(Throwable t) {
                callback.onError(t);
            }

            @Override
            public void onSuccess(String response) {
                callback.onSuccess();
            }
        });
    }
}

有关解析响应正文的方法示例,请参阅ModelRepository.javaModel.java

免责声明:我是LoopBack的开发者之一,loopback-sdk-android是我的专长之一。