如何在REST函数的ResponseBuilder中调用Javascript函数?

时间:2014-08-05 12:03:17

标签: java rest jersey

我想在客户端浏览器中调用Javascript代码,并使用各种状态更新Strings作为参数,来自我的Java服务器端代码。

javascript代码将调用以下checkstatus函数,我将返回调用javascript函数statusupdate 在回应中。

statusupdate()函数调用将使用String作为参数,例如statusupdate(" statusstring")

那么如何在我使用Jersey的REST函数的响应中调用JavaScript函数。

  @Path("apis")
  public class ChatAPIs {

  @GET
  @Path("/checkstatus")
  public Response checkStatus(@DefaultValue("") @QueryParam("vi") String vi){
    StatusCheckHelper statusCheckHelper = new StatusCheckHelper();

    return Response.ok(
       //I would Like to invoke a javascript function here.
      ).build();
  }

1 个答案:

答案 0 :(得分:1)

好的,我希望现在你的问题对我来说更清楚了。您希望从客户端运行的JavaScript调用RESTful API,然后,当响应异步到达时,使用RESTful API返回的结果调用回调函数。

因此,解决方案如下。您的checkStatus()可以返回您需要的任何类型。例如String。它显然可以被你想要的任何包装包裹但是没关系。 Javascript应该使用此脚本并调用statusUpdate(theReturnValue),其中theReturnValue是RESTful API返回的String(或其他内容)。

但是,如果将来你需要根据响应调用不同的回调函数,你可以返回复杂的响应并在客户端实现swich / case或if / else逻辑,甚至返回有效的javascript代码并使用{{ 1}}客户端的功能。

相关问题