javascript - 在 Play Framework 2 中使用 javascript 路由

标签 javascript ajax playframework-2.0

我正在尝试在 Play Framework 中使用 jsRoutes 进行 ajax 调用。它适用于不带任何参数的请求,但是当我尝试调用以 Long 作为参数的 Controller 方法时,它会失败并且没有错误消息。这里有一些代码可以更好地解释它。

Controller 类Users.java:

public static Result addToShortList(long id) {
 return whatever
}

session /路线

POST    /shortList/:userId  controllers.Users.addToShortList(userId: Long)

在 Application.java Controller 文件中,我像这样返回 jsRoutes:

public static Result javascriptRoutes() {
    response().setContentType("text/javascript");
    return ok(Routes.javascriptRouter("jsRoutes",
        controllers.routes.javascript.Application.frontpage(),
        ...
        controllers.routes.javascript.Users.addToShortList(),
        controllers.routes.javascript.Users.removeFromShortList()));
}

现在在我的 javascript 中,我可以通过执行以下操作来使用 jsRoutes:

jsRoutes.controllers.Users.addToShortList(id).ajax({
            success : function(data) {

                alert(data);
            },
            error : function(err) {
                //code always ends up here, with the err giving no eerror message at all!
                alert(err);             
            }
        });

似乎 play 框架的这个功能没有很好的文档记录,或者我只是瞎了,没在任何地方找到它......

感谢您的帮助!

最佳答案

好的,我自己解决了这个问题。问题似乎是我在 Controller 方法中使用了 long(primitive)。为什么这是一个我不知道的问题。

关于javascript - 在 Play Framework 2 中使用 javascript 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12458622/

相关文章:

javascript - 在哪里放置 jQuery 脚本?

java - Play 2.0 中带有泛型的自定义格式化程序

javascript - jquery ajax 改变样式表

javascript - 过渡不适用于高度

c# - Razor Pages POST 处理程序在 IIS 上返回 404

ajax - 在Grails中应用服务器端Javascript验证

scala - 我可以在 Play Framework 的模板/ View 中调用 session 吗

json - 玩框架路由麻烦(400错误请求)

javascript - 如何限制 sap.m.multicombobox 中建议下拉菜单的大小?

javascript - AJAX 表单数据不起作用