2013-06-06 21 views
5

https://developers.facebook.com/docs/facebook-login/using-login-with-games/người dùng, oauth_token, hết hạn là mất tích từ Facebook signed_request

họ tuyên bố đối tượng json là

{ 
    "oauth_token": "{user-access-token}", 
    "algorithm": "HMAC-SHA256", 
    "expires": 1291840400, 
    "issued_at": 1291836800, 
    "user_id": "218471" 
} 

nhưng tôi đã nhận này

{ 
    "algorithm": "HMAC-SHA256", 
    "code": "xxxxxx", 
    "issued_at": 1291836800, 
    "user_id": "218471" 
} 

Ghi chú:

ứng dụng của tôi đang ở chế độ hộp cát

Quyền: email; user_about_me; user_birthday; user_interests; user_location; user_games_activity

Có ai biết cách khắc phục không?

+0

Bạn không phải trao đổi mã cho mã thông báo? – Igy

+0

làm thế nào về nếu tôi không muốn thực hiện thêm một cuộc gọi để nhận mã thông báo. Tôi chỉ muốn yêu cầu đã ký để có tất cả thông tin người dùng. Làm thế nào tôi nên làm gì? – WooD

+0

cùng ở đây và sau khi đã thực hiện mọi thứ chính xác từ tài liệu API của họ, tôi cũng kết thúc bằng ... – px5x2

Trả lời

0

Bất cứ khi nào ai đó đã đăng nhập vào trò chơi của bạn với Facebook Đăng nhập , yêu cầu ký kết sẽ chứa một tài sản oauth_token rằng cung cấp cho bạn một mã thông báo sử dụng để thực hiện cuộc gọi API.

bạn nên xử lý thông tin đăng nhập bằng JavaScript SDK không phải vào ngày POST được gửi khi khởi chạy ứng dụng canvas.

NẾU bạn là khác nhau để có được một số thông tin trước khi đăng nhập vào, bạn nên trao đổi mã cho một access token

Để có được một thẻ truy cập, thực hiện một yêu cầu HTTP GET đến endpoint OAuth sau:

GET https://graph.facebook.com/oauth/access_token? 
    client_id={app-id} 
    &redirect_uri={redirect-uri} 
    &client_secret={app-secret} 
    &code={code-parameter} 

bạn sử dụng ajax để ngăn trang không bị làm mới.

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