質問編集履歴
2
文言の修正
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" => "
|
45
|
+
"email" => "emailの値",
|
46
|
-
"password" => "password"
|
46
|
+
"password" => "passwordの値"
|
47
47
|
];
|
48
48
|
|
49
49
|
if (Auth::attempt($credentials, true)) {
|
1
コードの追加
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
|
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
|
+
```
|