我在Symfony控制器中使用JSON响应。当我的结果为false时,Access-Control-Allow-Origin为OK,但当result为true时,Access-Control-Allow-Origin不允许访问。
$em = $this->getDoctrine()->getManager();
$submited = Request::createFromGlobals();
$id = $submited->request->get('id');
$user = $this->get('security.token_storage')->getToken()->getUser();
$link = $em->getRepository('AdminBundle:VisitGoogle')->findOneBy(array('id' => $id, 'status' => 0));
if ($link) {
$link->setStatus(1);
$em->persist($link);
$em->flush();
$user->setEarn($user->getEarn() + $link->getCredit());
$em->persist($user);
$em->flush();
$response = array("success" => true, 'message' => 'google is ok');
$response = new JsonResponse($response);
$response->headers->set('Access-Control-Allow-Origin', '*');
return $response;
} else {
$response = array("success" => false, 'message' => $this->get('translator')->trans('message.linkiswrong'));
$response = new JsonResponse($response);
$response->headers->set('Access-Control-Allow-Origin', '*');
return $response;
}
为什么会这样?我该如何解决?