ClientController.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Http;
  5. use App\HttpModels\ClientLobbyModel;
  6. use Cookie;
  7. use App\Models\Lobby;
  8. class ClientController extends Controller
  9. {
  10. // GET /care_months
  11. public function entrance(Request $request, Lobby $lobby) {
  12. $sessionKey = Cookie::get('sessionKey');
  13. $lobbyModel = new ClientLobbyModel($lobby);
  14. $response = response()->view('client/index',compact('lobbyModel'),200);
  15. if(!$sessionKey){
  16. $loginUrl = env('BACKEND_URL', 'http://localhost:8080') . '/api/session/createStrangerSession';
  17. $httpResponse = Http::asForm()->post($loginUrl)->json();
  18. if(!$httpResponse['success']){
  19. return back()->with("message", $httpResponse['message']);
  20. }
  21. $sessionKey = $httpResponse['data'];
  22. $cookie = cookie()->forever('sessionKey', $sessionKey, '/');
  23. // $response = new \Illuminate\Http\Response(view('client/index'));
  24. $response->withCookie($cookie);
  25. // return $response;
  26. }
  27. // else {
  28. // return view('client/index');
  29. // }
  30. return $response;
  31. }
  32. }