/*set the response header*/
Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers");
if (responseHeaders == null) {
responseHeaders = new Form();
responseHeaders.add("Access-Control-Allow-Origin", "*");
responseHeaders.add("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE");
getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders);
}
これをrestlet 2.0コードに追加して、クロスドメインアクセスを可能にしました。これにより、最初のGETがページの読み込みで機能しますが、後で(バックボーンmodel.save()を使用して)POSTを実行しようとすると、ブラウザーはOptionsをaで送信します代わりに null エンティティ。
上記のコードを追加しなかった場合、正しい POST が送信されます
これは Opera、Firefox、および Chrome で発生します (Chrome を --disable-web-security で開始すると正常に動作します)、これはまだブラウザのセキュリティの問題であると思います。修正?