質問編集履歴
1
コード追加
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
facebook a
|
1
|
+
facebook omniauth での email取得ができない
|
test
CHANGED
@@ -1,13 +1,43 @@
|
|
1
1
|
facebookのapiを使用して、facebookアカウントでのログイン機能を実装しました。
|
2
2
|
|
3
|
-
新規ログイン時に、facebookアカウントに登録されているemailを取得したいのですが、debuggerでfacebookから取得した各要素を見ても、emailがどこにもありません。
|
3
|
+
新規ログイン時に、facebookアカウントに登録されているemailを取得したいのですが、debuggerでfacebookから取得した各要素を見ても、emailがどこにもありません(以下)。
|
4
|
+
|
5
|
+
```rails
|
6
|
+
|
7
|
+
#<OmniAuth::AuthHash credentials=#<OmniAuth::AuthHash expires=true
|
8
|
+
|
9
|
+
expires_at=****** token="*****"> extra=#<OmniAuth::AuthHash raw_info=#<OmniAuth::AuthHash
|
10
|
+
|
11
|
+
id="****" name="Ozaki">> info=#<OmniAuth::AuthHash::InfoHash
|
12
|
+
|
13
|
+
image="http://graph.facebook.com/v2.10/*****/picture" name="Ozaki">
|
14
|
+
|
15
|
+
provider="facebook" uid="*****">
|
16
|
+
|
17
|
+
```
|
4
18
|
|
5
19
|
そこで、facebookデベロッパーツールの承認済みアイテムを見ると、eメールの取得権限はデフォルトで備わっていると書いてあります。
|
6
20
|
|
7
21
|
書いてあることと実際が合っていなく、解決策が見つかりません。
|
22
|
+
|
23
|
+
教えていただきたいです。
|
8
24
|
|
9
25
|
___
|
10
26
|
|
11
27
|
**試したこと**
|
12
28
|
|
13
29
|
twitterのapiと同様に、プライバシーポリシーと利用規約のURLを記述し、変更を保存しましたが、特に何も変わりませんでした。
|
30
|
+
|
31
|
+
また、omniauth.rbは以下です。scopeとinfo_fieldsで正しく設定しているつもりです。
|
32
|
+
|
33
|
+
```omniauth
|
34
|
+
|
35
|
+
Rails.application.config.middleware.use OmniAuth::Builder do
|
36
|
+
|
37
|
+
provider :facebook, ENV['FACEBOOK_ID'], ENV['FACEBOOK_SECRET'],
|
38
|
+
|
39
|
+
scope: 'email', info_fields: 'email'
|
40
|
+
|
41
|
+
end
|
42
|
+
|
43
|
+
```
|