2012-11-21 26 views
5

Im sử dụng hộp thoại facebook yêu cầu để hiển thị danh sách bạn bè của tôi và mời này trong Facebook Web APP, sử dụng này:Làm thế nào có được ID thông báo khi người dùng nhập vào bạn app

function sendRequestViaMultiFriendSelector() { 
     FB.ui(
     { 
      method: 'apprequests', 
      message: 'Selección de amigos a los que invitar a KugaBar' 
     }, requestCallback); 
    } 

    function requestCallback(data) { 

     console.log(data); 
} 

nó hoạt động, ok, nhưng tôi cần phải xác định người dùng khi nhập vào APP của tôi, y thấy dữ liệu requestCallback và thấy "yêu cầu", nhưng khi người dùng nhấp vào thông báo và nhập vào APP tôi không biết cách xác định yêu cầu phát hiện nếu người dùng accesing bởi thông báo.

EDIT: OK Tôi đã tìm thấy nó, param trong GET vars là "request_ids", nhưng một vấn đề xuất hiện, param này chỉ đến nếu người dùng trước đó đã nhận các quyền, nếu người dùng gõ vào thông báo, chấp nhận quyền truy cập và nhập, tham số dos này tồn tại, nếu người dùng nhập lại (không cần phải đánh dấu gì cả) thông số này tồn tại trong URL.

Có phương pháp nào để lấy thông số này trong lần đầu tiên người dùng nhập không?

Có thể?

Cảm ơn

+0

Tìm thấy "giải pháp": $ requestUri = (! Empty ($ _ REQUEST ['request_ids']))? TAB_URL. '? request_ids ='. $ _REQUEST ['request_ids']: TAB_URL; \t \t $ loginUrl = $ facebook-> getLoginUrl (mảng ('scope' => APP_SCOPE, 'redirect_uri' => $ requestUri)); echo ' '; – Zenth

+0

Bạn có thể đăng câu trả lời nếu bạn tìm thấy giải pháp. Và nếu một số câu hỏi của bạn không được giải quyết, xin hãy giải thích? –

Trả lời

0

Khi người dùng đầu tiên nhấp chuột vào một yêu cầu, bạn sẽ nhận được REQUEST_ID từ URL và lưu nó trong một cookie. Khi người dùng đã hoàn tất đăng nhập, hãy kiểm tra xem cookie có tồn tại không và sau đó cập nhật hồ sơ của bạn cho phù hợp.

0

Thông báoYêu cầu KHÔNG giống nhau trên Facebook. Trong trường hợp của bạn, bạn đang nói về Yêu cầu. Các id yêu cầu được chuyển đến ứng dụng dưới dạng tham số GET 'request_ids' là danh sách được phân cách bằng dấu phẩy.

Để có thể truy cập thông số này sau hộp thoại đăng nhập, bạn muốn lưu các tham số GET từ URL khởi chạy ban đầu trước khi chuyển hướng đến hộp thoại OAuth và chuyển chúng xung quanh trong URL chuyển hướng. Bằng cách này bạn đã giải quyết vấn đề này cho tất cả các tham số GET trong tương lai của bạn.

Nếu bạn đang sử dụng PHP, chức năng bạn đang tìm kiếm là http_build_query. Tôi rất khuyến khích sử dụng cookie để lưu trữ thông số URL một lần và dễ truy cập.

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