2017-02-16 12 views
5

Tôi đã sử dụng đăng nhập Facebook trong ứng dụng của mình trong một thời gian mà không có bất kỳ vấn đề nào. Chúng tôi đã cập nhật lớn cho trang web của mình và giờ tôi vẫn gặp phải lỗi này từ một số người dùng và chỉ trong ứng dụng Android cordova của chúng tôiFacebook (OAuthException - # 100) Đã thử truy cập trường không tồn tại (first_name) trên loại nút (AnonymousUser)

(OAuthException - # 100) (# 100) Đã truy cập trường không tồn tại (first_name) trên loại nút (AnonymousUser)

Tôi không thể tạo lại lỗi, thử nhiều thứ khác nhau, với ứng dụng Facebook được cài đặt hay không, người dùng khác nhau, điện thoại khác nhau.

Tôi đang sử dụng mã này trong C# để có được người dùng

var fb = new Facebook.FacebookClient(accessToken); 
fb.Version = "v2.8"; 
dynamic me = fb.Get("me?fields=first_name,last_name,id,email, gender"); 

Nhưng nếu tôi làm điều này

dynamic me = fb.Get("me?fields=id"); 

Sau đó nó hoạt động và mang lại cho tôi một id, nhưng tôi nghĩ first_name và last_name luôn có sẵn.

Tôi không thể thấy bất cứ điều gì trong bản cập nhật của chúng tôi sẽ phá vỡ điều này và tôi không thể tìm ra cách mã thông báo sẽ dành cho Người dùng ẩn danh. Làm thế nào bạn có thể nhận được một mã thông báo như vậy?

Sửa Đây là mã cordova đăng nhập

facebookConnectPlugin.login(
    ["email"], // array of permissions 
    function (response: any) { ... }, 
    function (response: any) { ... } 
); 
+0

Vâng, thi s dường như liên quan đến một phiên bản mới của Facebook. Bây giờ tôi nhận được một thông báo "Trước đây bạn đã đăng nhập vào CompuSport ẩn danh. Bạn có thể tiếp tục đăng nhập bằng Facebook trên màn hình tiếp theo." khi tôi cố đăng nhập từ web –

Trả lời

0

Một cách giải quyết cho đến khi facebook sửa chữa lỗi của họ là để thêm public_profile để danh sách các quyền được yêu cầu

facebookConnectPlugin.login(
    ["public_profile", "email"], // array of permissions 
    function (response: any) { ... }, 
    function (response: any) { ... } 
); 
Các vấn đề liên quan