Php CORS在同一个域上
在从我的角度前端调用后端API时,我一直遇到以下错误 前端和后端都运行在同一域下的同一台服务器上 前端可以从调用,API位于 对于API,PHP框架V4与CORS逻辑一起使用Php CORS在同一个域上,php,angular,cors,slim,preflight,Php,Angular,Cors,Slim,Preflight,在从我的角度前端调用后端API时,我一直遇到以下错误 前端和后端都运行在同一域下的同一台服务器上 前端可以从调用,API位于 对于API,PHP框架V4与CORS逻辑一起使用 $app->options('/{routes:.*}', function ($request, $response) { // CORS Pre-Flight OPTIONS Request Handler return $response; }); $app-
$app->options('/{routes:.*}', function ($request, $response) {
// CORS Pre-Flight OPTIONS Request Handler
return $response;
});
$app->add(function ($request, $handler) {
$response = $handler->handle($request);
return $response
->withHeader('Access-Control-Allow-Origin', '*')
->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization, FF-API-KEY')
->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, PATCH, OPTIONS');
});
$app->group('/v1', function(Group $group) use ($container) {
// Public routes
$publicRoutes = require 'publicRoutes.php';
$publicRoutes($group, $container);
});
如何解决此问题?当我测试您的签入页面时,它可以正常工作。api/v1/checkin上没有CORS错误,只有400
Das属性“email”mus ein g\u00fcltiges格式的haben。
。您只有在拥有另一个域时才需要CORS。问题是子域与。现在,我必须将所有内容重定向到。我可以用.htaccess实现重定向吗?您可以检查URL的第一部分是否在允许的来源中,并允许从此域访问所有URL(和端口)。可以在小型定制中间件中实现这一点。foreach($allowedOrigins作为$allowedOrigin){if(str_以($allowedOrigin,$urlRequestWasSentFrom)开头){在这里做一些事情,比如用状态200回复}