嘿傢伙我有一些Slim Middleware的問題。Slim post方法重定向不適用於超薄中間件
我創建了一箇中間件,用於檢查用戶是否使用Facebook登錄並具有特定的電子郵件地址。所以,現在當我用PHPStorm RESTful Test工具調用URL時,我不應該能夠將數據發佈到服務器... 但是,重定向不起作用,所以我將能夠發送數據到服務器。
/**
* Admin Middleware
*
* Executed before /admin/ route
*/
$adminPageMiddleware = function ($request, $response, $next) {
FBLoginCtrl::getInstance();
$user = isset($_SESSION['user']) ? $_SESSION['user'] : new User();
if (!($user->getEmail() == ADMIN_USER_EMAIL)) {
$response = $response->withRedirect($this->router->pathFor('login'), 403);
}
$response = $next($request, $response);
return $response;
};
/**
* Milestone POST Method
*
* Create new Milestone
*/
$app->post('/admin/milestone', function (Request $request, Response $response) use ($app) {
$milestones = $request->getParsedBody();
$milestones = isset($milestones[0]) ? $milestones : array($milestones);
foreach ($milestones as $milestone) {
$ms = new Milestone();
$msRepo = new MilestoneRepository($ms);
$msRepo->setJsonData($milestone);
if (!$msRepo->createMilestone()) {
return $response->getBody()->write("Not Okay");
};
}
return $response->getBody()->write("Okay");
})->add($adminPageMiddleware);
所以任何人都可以給我一個提示什麼問題可能是什麼? 我試圖添加相同的中間件到獲得路線...它的工作原理:/奇怪的東西。
用戶點擊與Facebook登錄後,將創建會話,他是由Facebook的,PHP的重定向SDK –