2013-03-31 24 views
5

Thông tin đăng nhập đang hoạt động nhưng chỉ yêu cầu quyền cơ bản và không có cảnh báo nào kích hoạt khi hủy hoặc hoàn tất hộp thoại.FB.login() không yêu cầu các quyền nhất định

window.fbAsyncInit = function() { 

    // init the FB JS SDK 
    FB.init({ 
     appId  : 'XXX', // App ID from the App Dashboard 
     channelUrl : 'XXX', // Channel File for x-domain communication 
     cookie  : true, // set sessions cookies to allow your server to access the session? 
     xfbml  : true, // parse XFBML tags on this page? 
     frictionlessRequests: true, 
     oauth: true 
    }); 

    FB.login(function(response) { 
     if (response.authResponse) { 
     alert("ok"); 
     } else { 
     alert("canceled"); 
     } 
    }, {scope:'publish_actions,publish_stream'}); 

    }; 

Trả lời

9

Bạn đang sử dụng fb: login-button? Nếu vậy, bạn đã thử thêm quyền ở đó thay vì trong FB.login() chưa? Vì vậy, nó sẽ giống như thế:

<fb:login-button scope="publish_actions,publish_stream"></fb:login-button> 
+2

Câu trả lời này phải được đánh dấu là câu trả lời đúng. Điều này giải quyết được vấn đề của tôi. Phương thức 'FB.Login' không gửi tham số' scope' khi sử dụng 'fb: login-button'. Có vẻ như một lỗi thư viện facebook. –

+1

Điều này đã soooo lâu để tìm! Có ai báo cáo điều này với facebook là một lỗi chưa? Khi sử dụng 'XFBML',' {scope: ''} 'bị bỏ qua hoàn toàn. –

0

Tôi không biết nếu bạn sẽ sử dụng OG Hành động, nếu không, bạn nên đọc về publish_actions/publish_stream: http://developers.facebook.com/blog/post/2012/04/25/streamlining-publish_stream-and-publish_actions-permissions/

Đối với vấn đề của bạn về các cảnh báo, cố gắng để loại bỏ các var oauth.

+0

Đã thử, không hoạt động. 'FB.login (function (response) {}, {scope: 'publish_actions'});' cũng không hoạt động .. – Chris

+0

Nó hoạt động khi tôi đặt nó trực tiếp trên sự kiện onlick: 'onclick =" FB.login (function (phản hồi) {}, {scope: 'publication_actions'}); "' – Chris

+0

Tôi hiểu, dù sao cũng không phải là ý hay khi tự động kích hoạt FB.login() và trên mọi trang. Dưới đây là một ví dụ nhỏ giúp bạn: http://facebook.stackoverflow.com/a/15720747/2212966 –

2

Chú ý: Nếu ứng dụng Facebook của bạn là công trình cho phép bạn truy nã vì bình luận lên Facebook nếu bạn chưa làm điều này. Kiểm tra trang tổng quan của nhà phát triển của bạn. Nếu bạn đang phát triển, không đặt ứng dụng của bạn ở chế độ công khai và thêm người dùng để thử nghiệm thông qua trang tổng quan Facebook.

+0

Cảm ơn bạn! Tôi mới bắt đầu. Tôi không hiểu tại sao các truy vấn có thêm quyền làm việc qua Graph API Explorer, nhưng không phải trong ứng dụng của tôi. Câu trả lời của bạn khiến tôi không bị mắc kẹt. Làm cho cảm giác hoàn hảo ngay bây giờ. –

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