允许 Mojolicious::Plugin::SecureCORS 的 CORS
Allow CORS with Mojolicious::Plugin::SecureCORS
我是 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
header 并允许所有 POST、GET、PUT、...
坦率地说,我没有使用过 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');
});
希望对您有所帮助。
我是 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
header 并允许所有 POST、GET、PUT、...
坦率地说,我没有使用过 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');
});
希望对您有所帮助。