Camel REST DSL enableCORS仅适用于GET

时间:2015-02-17 13:38:25

标签: rest apache-camel cors

我使用Camel 2.14.1或2.15.0快照设置了一个简单的REST接口。

   <restConfiguration bindingMode="auto" component="jetty"
                host="127.0.0.1" port="8082" enableCORS="true">

在这两个版本中,启用CORS仅适用于GET请求,但不适用于POST或PUT,因为它们之前需要OPTIONS请求。但是浏览器总是会出现404错误,因为OPTIONS方法是不允许的,即使文档明确指出如果你设置enableCORS="true"就是这种情况。 http://camel.apache.org/rest-dsl.html

  

访问控制 - 允许 - 方法:GET,HEAD,POST,PUT,DELETE,TRACE,   选项,连接,补丁

我也尝试通过设置十字头来手动执行此操作,但仍然没有运气。

<restConfiguration bindingMode="auto" component="jetty"
            host="127.0.0.1" port="8082" enableCORS="true">
            <corsHeaders key="Access-Control-Allow-Origin" value="*"/>
            <corsHeaders key="Access-Control-Allow-Headers" value="Origin, Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers"/>
            <corsHeaders key="Access-Control-Allow-Methods" value="GET,PUT,POST,HEAD,OPTIONS"/>
            </restConfiguration>

感谢您的帮助!

0 个答案:

没有答案