0

私は ajax に問題があり、フレームワーク 2.1.1 を再生します。

私の遊びプロジェクト

ルート:

POST /sample/testapi controllers.Application.testapi()

GET /sample/ajax controllers.Application.ajax()

アプリケーション.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({
url : "http://localhost:3333/sample/testapi",
type: 'POST',
data: {data: "test"},
dataType: "text",
success : function(result) {
アラート (結果);
}、
エラー: 関数 (要求、エラー) {
アラート (エラー);
}
});

それは正常に動作します。

そして、私はhtmlファイルを持っていて、ajaxを介してプロジェクトを再生するために呼び出します。

アクションが呼び出されましたが、結果が返されず、アラート「エラー」が表示されました。

私を助けてください。ありがとう。

4

1 に答える 1

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", "*");" 他のドメインがそれを呼び出すことを許可します。

于 2013-07-04T01:55:14.577 に答える