簡體   English   中英

Symfony從服務返回JsonResponse

[英]Symfony return JsonResponse from service

我有一個控制器從移動應用程序返回JsonResponse,對於每個操作,我必須驗證用戶是否已使用令牌連接。 我想在服務身份驗證中委派此操作。

    $user = $this->em->getRepository('UserBundle:User')->findOneBy(array('email' => $username));
    if (!$user) {
        return new JsonResponse('User not found', 501);
    }
    $session = $this->em->getRepository('UserBundle:Session')->findOneBy(array('user' => $user->getId(), 'token' => $token));
    if(!$session){
        return new JsonResponse('Session not found', 501);
    }
    return true;

在這里一切正常,但是在我的控制器中,我必須進行此測試以驗證結果。

    if($result instanceof JsonResponse){
        return $result;
    }
    ...

我可以直接從服務中返回JsonResponse並停止在控制器中執行,還是有最好的解決方案來做到這一點。

奇怪的是沒有人回答這個問題,我對此也很好奇,但是有人告訴我這不是要走的路。 解釋是,如果您想將響應類型從json更改為其他類型,則必須重構許多類(包括服務),但是如果您在控制器中創建響應,則可以在那里進行更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM