回答編集履歴
1
番号が正しく出ないので修正
answer
CHANGED
@@ -1,14 +1,16 @@
|
|
1
1
|
考えうる方法
|
2
2
|
|
3
|
-
|
3
|
+
① 全てのページでcookieに「いま表示されているURL(Aとする)を保存する処理」を書く(ログインページは除く)
|
4
4
|
```javascript
|
5
5
|
document.cookie= 'lastpage=' + window.location; //最終訪問ページを保存
|
6
6
|
```
|
7
|
+
|
7
|
-
|
8
|
+
② ログインページでcookieに「今からログインするフラグ(Bとする)を保存する処理」を書く
|
8
9
|
```javascript
|
9
10
|
document.cookie= 'login=1';// ログインフラグを立てる
|
10
11
|
```
|
12
|
+
|
11
|
-
|
13
|
+
③ ログイン後に遷移するマイページで、「B」状態であった場合、「A」にリダイレクトする処理を書く
|
12
14
|
```javascript
|
13
15
|
var cookies = document.cookie.split(";");
|
14
16
|
document.cookie = 'login=0'; // ログインフラグを下ろす
|
@@ -18,8 +20,10 @@
|
|
18
20
|
var pair = cookie.split("=");
|
19
21
|
map[pair[0]] = pair[1];
|
20
22
|
}
|
21
|
-
|
23
|
+
if('login' in map && map['login'] === '1') {
|
22
|
-
|
24
|
+
// マイページにログイン後に来たので、保存されているURLへリダイレクトする
|
23
|
-
|
25
|
+
window.location = map['lastpage'];
|
24
|
-
|
26
|
+
}
|
25
|
-
```
|
27
|
+
```
|
28
|
+
|
29
|
+
ただし、これはPOSTで遷移したページではリダイレクトで戻ることは出来ないので、GETでのページ移動のみに限ります。
|