2015-07-29 21 views
11

Tôi đang cố gắng đăng nhập vào trang web của mình bằng tài khoản Facebook nhưng Facebook chỉ cung cấp tên và id mà không đủ để đăng nhập người dùng. Trước khi tôi đã nhận được đầy đủ thông tin như firstname, lastname, email vvFacebook chỉ trả về tên và id của người dùng

dữ liệu được cung cấp bởi facebook bây giờ:

stdClass Object 
(
    [name] => FName LName 
    [id] => 236189327864097 
) 

Tôi đang sử dụng OAuth v2.0 để đăng nhập người dùng thông qua Facebook để trang web của tôi.

Trả lời

14

Có vẻ như bạn đang sử dụng v2.4 của API đồ thị. Xem

Declarative Fields
Để cố gắng cải thiện hiệu suất trên các mạng di động, nút và các cạnh trong v2.4 đòi hỏi bạn phải dứt khoát yêu cầu lĩnh vực (s) bạn cần cho các yêu cầu GET của bạn. Ví dụ: GET /v2.4/me/feed không còn bao gồm lượt thích và nhận xét theo mặc định, nhưng GET /v2.4/me/feed?fields=comments,likes sẽ trả về dữ liệu. Để biết thêm chi tiết, hãy xem tài liệu về cách yêu cầu các trường cụ thể.

Để có được một ý tưởng làm thế nào để sử dụng việc mở rộng lĩnh vực cái gọi là, có một cái nhìn tại

+0

để bạn nói rằng tôi phải thay đổi url yêu cầu để tìm nạp dữ liệu .. – Wolfack

+0

@RaghubendraSingh Có, ** nếu ** bạn đang sử dụng v2.4. – Tobi

+0

đã thêm các trường trong url được gọi là sử dụng chức năng CallAPI và kết quả mong muốn. Thư giãn ngay bây giờ. – Wolfack

1

Nếu bạn sử dụng PHP, bạn cần phải đọc cũng bài viết này:

https://developers.facebook.com/docs/facebook-login/permissions/v2.4

về cơ bản, Fb nói về email rằng

Lưu ý, ngay cả khi bạn yêu cầu quyền email không được bảo đảm bạn sẽ nhận được một địa chỉ email. Ví dụ: nếu ai đó đã đăng ký Facebook bằng số điện thoại thay vì địa chỉ email, trường email có thể trống.

7
FB.api('/me?fields=first_name, last_name, picture, email', function(response) { 
      console.log(response); 
      document.getElementById('status').innerHTML = 
      'Thanks for logging in, ' + response.first_name + '!'; 
     }); 

Điều này phù hợp với tôi. Chuyển email sau/me? Fields = trong yêu cầu FB.api.

+0

Nó không hoạt động đối với url bên dưới '/ me/friends? fields = first_name, last_name, ảnh, email', – user43286

Các vấn đề liên quan