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

質問編集履歴

4

追記

2020/04/25 04:00

投稿

GenkiSugiyama
GenkiSugiyama

スコア86

title CHANGED
File without changes
body CHANGED
@@ -65,7 +65,8 @@
65
65
 
66
66
  safariブラウザのセキュリティバージョンアップ([https://support.apple.com/ja-jp/HT211102](https://support.apple.com/ja-jp/HT211102))が行われたことによる、クロスドメイン?対応の強化による最新のSafariブラウザで発生する障害であることまでは判明しました。
67
67
 
68
+ プログラムの修正と言うよりかは、サーバー側の設定の修正が必要ではないかと言うことなのですが、
68
- ただ、自分の経験が浅く何をどのように改修すれば修正に繋がるのかがわからず困っています。
69
+ 自分の経験が浅く何をどのように改修すれば修正に繋がるのかがわからず困っています。
69
70
 
70
71
  修正方法についてご教示いただけると助かります。
71
72
 

3

誤字の修正

2020/04/25 04:00

投稿

GenkiSugiyama
GenkiSugiyama

スコア86

title CHANGED
File without changes
body CHANGED
@@ -3,7 +3,7 @@
3
3
  これまで問題なく動いていたアプリのログイン周りの機能が、safariだけ機能しなくなり、safariユーザーがアプリに新規登録・ログインができなくなりました。
4
4
 
5
5
  ###ログイン機能の実装方法
6
- Rails側ではdevise + devise token authを用いてログイン機能を実しており、React側かPOST API通信でユーザー情報を送信しています。
6
+ Rails側ではdevise + devise token authを用いてログイン機能を実しており、React側かPOST API通信でユーザー情報を送信しています。
7
7
 
8
8
  【React】
9
9
  ```JavaScript

2

タグの変更

2020/04/24 08:07

投稿

GenkiSugiyama
GenkiSugiyama

スコア86

title CHANGED
File without changes
body CHANGED
File without changes

1

ログイン機能の実装方法追加

2020/04/24 01:20

投稿

GenkiSugiyama
GenkiSugiyama

スコア86

title CHANGED
File without changes
body CHANGED
@@ -2,6 +2,67 @@
2
2
 
3
3
  これまで問題なく動いていたアプリのログイン周りの機能が、safariだけ機能しなくなり、safariユーザーがアプリに新規登録・ログインができなくなりました。
4
4
 
5
+ ###ログイン機能の実装方法
6
+ Rails側ではdevise + devise token authを用いてログイン機能を実行しており、React側かPOST API通信でユーザー情報を送信しています。
7
+
8
+ 【React】
9
+ ```JavaScript
10
+ const end_point = 'http://localhost:3001';
11
+ const agent = new https.Agent({
12
+ rejectUnauthorized: false,
13
+ });
14
+ let header = {
15
+ 'Content-Type': 'application/json',
16
+ 'Accept': 'application/json',
17
+ 'access-token': ``,
18
+ 'client': ``,
19
+ 'uid': ``,
20
+ }
21
+ let myHttpClient = axios.create({
22
+ xhrFields: {
23
+ withCredentials: true,
24
+ },
25
+ httpsAgent : agent,
26
+ headers : header,
27
+ data : {},
28
+ });
29
+
30
+ // ログイン
31
+ export async function post_login_api(action, data) {
32
+ let postResponse = '';
33
+ try {
34
+ postResponse = await myHttpClient.post(end_point + action, data);
35
+ }
36
+ catch (error){
37
+ return "loginfalse";
38
+ }
39
+ return postResponse;
40
+ }
41
+
42
+ //ログインボタン押下時の処理
43
+ post_login_api('api/v1/auth/sign_in', loginData).then((result) => {
44
+ if (result == 'loginfalse') {
45
+ setLoading(false);
46
+ window.scrollTo(0, 0);
47
+ alert("メールアドレス・パスワードが正しくありません。");
48
+ return;
49
+ } else {
50
+ dispatch({
51
+ type: 'ADD_USERID',
52
+ value: result.data.data.id
53
+ });
54
+ dispatch({
55
+ type: 'ADD_USERHEADER',
56
+ access: result.headers["access-token"],
57
+ client: result.headers.client,
58
+ uid: result.headers.uid,
59
+ });
60
+ // TOP画面に遷移
61
+ dispatch(push('/top'))
62
+ }
63
+ })
64
+ ```
65
+
5
66
  safariブラウザのセキュリティバージョンアップ([https://support.apple.com/ja-jp/HT211102](https://support.apple.com/ja-jp/HT211102))が行われたことによる、クロスドメイン?対応の強化による最新のSafariブラウザで発生する障害であることまでは判明しました。
6
67
 
7
68
  ただ、自分の経験が浅く何をどのように改修すれば修正に繋がるのかがわからず困っています。