Os navegadores enviam Opções em vez de Publicar depois de alterar o cabeçalho http
/*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);
}
Eu adicionei isso no meu código de restlet 2.0 para permitir o acesso de domínio cruzado, isso faz com que o primeiro GET funcione no carregamento da página, mas quando tento fazer POST mais tarde (com backbone model.save ()), o navegador envia Opções com um entidade nula em vez disso.
Ele envia o POST certo se eu não adicionar o código acima
Isso acontece no Opera, Firefox e Chrome (funciona bem se eu iniciar o chrome com --disable-web-security), então suponho que ainda seja um problema de segurança do navegador, alguém poderia fornecer explicações sobre por que isso aconteceria e o que poderia ser o conserto?