0

我是 Mojolicious 的新手,尤其是使用插件SecureCORS。如何在 POST 请求中允许 CORS?
我设法通过以下几行允许 CORS 用于 GET:

use Mojolicious::Lite;

app->plugin('SecureCORS');
app->routes->to('cors.origin' => '*');

我认为'cors.origin' => '*'所有方法都允许使用 CORS,但它仅适用于 GET。
也许还有另一种或更好的方法来发送 Access-Control-Allow-Origin 标头并允许所有POST、GET、PUT ......

感谢您的帮助和想法!

4

1 回答 1

2

坦率地说,我没有使用 SecureCors 插件,但在 Mojolicious 中开发 REST API 时,我遇到了同样的跨域问题。

注意:- 我没有使用 Mojolicious::lite 应用程序。

您可能需要在您的启动子例程下(如果不使用 Mojolicious::Lite)做一些或多或少类似的事情。

$self->hook(after_dispatch => sub { 
    my $c = shift; 
    $c->res->headers->header('Access-Control-Allow-Origin' => '*'); 
    $c->res->headers->access_control_allow_origin('*');
    $c->res->headers->header('Access-Control-Allow-Methods' => 'GET, OPTIONS, POST, DELETE, PUT');
    $c->res->headers->header('Access-Control-Allow-Headers' => 'Content-Type' => 'application/x-www-form-urlencoded');

}); 

我希望它有所帮助。

于 2020-04-25T09:41:08.667 回答