【发布时间】:2013-07-02 10:12:30
【问题描述】:
ajax有问题,玩framework 2.1.1:
我的游戏项目
路线:
POST /sample/testapi controllers.Application.testapi()
GET /sample/ajax controllers.Application.ajax()
Application.java
public static Result testapi() {
DynamicForm dynamicForm = DynamicForm.form().bindFromRequest();
String data= dynamicForm.get("data");
Logger.debug(data);
return ok("<user no='1'><id>1</id><name>Peter</name></user>");
}
public static Result ajax() {
return ok(ajax.render());
}
当我通过 ajax 从 ajax.scala.html 调用操作“testapi”时
我的 ajax 代码
$.ajax({
网址:“http://localhost:3333/sample/testapi”,
类型:'POST',
数据:{数据:“测试”},
数据类型:“文本”,
成功:函数(结果){
警报(结果);
},
错误:函数(请求,错误){
警报(错误);
}
});
它工作正常。
我有一个 html 文件,我通过 ajax 调用来播放项目。
动作已被调用,但没有返回结果并显示警报“错误”。
请帮助我。谢谢。
【问题讨论】:
-
在浏览器中使用一些检查工具在新窗口中打开 POST (ajax) 请求并检查您的控制器是否没有抛出异常。很难说你的电话出了什么问题。
-
错误状态为0
-
只是为了傻笑,您是否尝试过使用 API 端点的路由控制器而不是将路由硬编码到 url 变量中?这也可能不是问题,但看起来您正在发回 XML 数据,但您将其设置为接受“文本”类型。
-
如果 AJAX 正在工作并且正在调用控制器,但没有发回结果,您是否检查过您的 Application.log 文件?
-
"text" 或 "xml" 类型也不起作用。我认为这不是问题。我不明白使用 API 端点的路由控制器而不是将路由硬编码到 url 变量中。你能给我解释一下吗?