调用Ajax Play FrameWork

时间:2013-07-02 10:12:31

标签: playframework-2.1

我遇到了ajax的问题​​,玩框架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.scala.html通过ajax

调用动作“testapi”时

我的ajax代码

$。AJAX({
      url:“http:// localhost:3333 / sample / testapi”,
    类型:'POST',
    数据:{data:“test”},
    dataType:“text”,
    成功:功能(结果){
           警报(结果);
    },
    错误:功能(请求,错误){
           警报(误差);
    }
});

工作正常。

我有一个html文件,我打电话通过ajax播放项目。

已调用该操作,但未返回结果并显示警告“错误”。

请帮帮我。感谢。

1 个答案:

答案 0 :(得分:1)

我添加了“response()。setHeader(”Access-Control-Allow-Origin“,”*“);”我的行动。

   public static Result testapi() {
       response().setHeader("Access-Control-Allow-Origin", "*");

       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>");

}

“response()。setHeader(”Access-Control-Allow-Origin“,”*“);”允许其他域名调用它。