teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

文言の修正

2021/06/09 02:32

投稿

yookoko
yookoko

スコア62

title CHANGED
File without changes
body CHANGED
@@ -42,8 +42,8 @@
42
42
  ``` php:PHP
43
43
  Route::get('/auth_login', function () {
44
44
  $credentials = [
45
- "email" => "clarabelle17@example.com",
45
+ "email" => "emailの値",
46
- "password" => "password"
46
+ "password" => "passwordの値"
47
47
  ];
48
48
 
49
49
  if (Auth::attempt($credentials, true)) {

1

コードの追加

2021/06/09 02:32

投稿

yookoko
yookoko

スコア62

title CHANGED
File without changes
body CHANGED
@@ -27,9 +27,52 @@
27
27
  });
28
28
  ```
29
29
 
30
+ 「/auth_login」にアクセスします。
30
31
  `Auth::attempt`で認証を行い、認証が成功します。
31
32
  その後`Auth::id()`でユーザーIDが取得できます。
32
33
 
33
- ですが、URL`/auth_check`に遷移するとログイン状態が維持されていなく`Auth::id()`が取得できません。
34
+ ですが、URL/auth_checkに遷移するとログイン状態が維持されていなく`Auth::id()`が取得できません。
34
35
 
35
- 考えられる原因がありましたら教えて頂けると助かります。
36
+ 考えられる原因がありましたら教えて頂けると助かります。
37
+
38
+ 以下追記です。
39
+ sessionが機能しているかテストしました。
40
+ `Auth::attempt`を利用するとsession自体がうまく取得できなくなります。
41
+
42
+ ``` php:PHP
43
+ Route::get('/auth_login', function () {
44
+ $credentials = [
45
+ "email" => "clarabelle17@example.com",
46
+ "password" => "password"
47
+ ];
48
+
49
+ if (Auth::attempt($credentials, true)) {
50
+ dump("認証しました");
51
+ } else {
52
+ dump("認証に失敗しました");
53
+ }
54
+
55
+ session(["test_session" => "セッションテスト"]);
56
+
57
+ dump(Auth::id()); // idが取得できる
58
+ });
59
+
60
+ Route::get('/auth_check', function () {
61
+ dump("認証確認");
62
+ dump(Auth::id()); // idが取得できない
63
+
64
+ dump(session("test_session", "セッション取得に失敗")); // 「セッション取得に失敗」が出力
65
+ });
66
+ ```
67
+
68
+ `Auth::attempt`を利用していない場合は、session値は取得できます。
69
+
70
+ ``` php:PHP
71
+ Route::get('/auth_login', function () {
72
+ session(["test_session" => "セッションテスト値"]);
73
+ });
74
+
75
+ Route::get('/auth_check', function () {
76
+ dump(session("test_session", "セッション取得に失敗")); // 「セッションテスト値」が出力
77
+ });
78
+ ```