2012-01-27 46 views
9

Tôi đang cố gắng theo dõi this tutorial để nhận mã thông báo có thời gian hết hạn dài hơn. Kết nối Facebook được thực hiện ở phía máy khách (Js sdk). Các bước tôi thực hiện là:Truy cập Facebook Mã thông báo hết hạn dài hơn

  • kích hoạt 'không dùng offline_access' trên trang
  • cài đặt ứng dụng của tôi truy xuất các access_token như bình thường
  • curl "https://graph.facebook.com/oauth/access_token
    client_id = APP_ID & client_secret = APP_SECRET & grant_type? = fb_exchange_token & fb_exchange_token = access_token "

Điều này luôn trả về cùng một mã thông báo truy cập giống hệt nhau với thời gian hết hạn là 2 giờ, không nên trả lại mã thông báo (giống hoặc không phải là access_token) hợp lệ trong 60 ngày?

Cảm ơn

Trả lời

6

Tính đến ngay bây giờ, trong kinh nghiệm của tôi, có vẻ như rằng 60 tokens ngày được trả về cho người dùng mới thêm ứng dụng sau khi 'không dùng offline_access' thiết lập được kích hoạt. Người dùng cũ hơn, từ trước khi đặt cài đặt 'deprecate offline_access' dường như bị kẹt trong vòng 2 giờ.

Tôi cũng có một số thử nghiệm dường như cho biết rằng cài đặt 'Cài đặt hộp thoại Auth Enhanced' ngoài cài đặt 'deprecate offline_access' là bắt buộc để nhận mã thông báo dài.

+0

Tuyệt vời! Cảm ơn rất nhiều @Greg_Whalin, 'Enhanced Auth Dialog' thực sự cần thiết – jlezard

+0

Cũng sử dụng phía máy khách (desktop) auth, có cả "deprecate offline_access" và "enhanced auth dialog" được kích hoạt. Sau khi toàn bộ quá trình xác thực, tôi nhận được mã thông báo truy cập hợp lệ trong 60 ngày. NHƯNG Tôi không thể mở rộng hiệu lực bằng cách gọi điểm cuối được đề cập. Nó luôn trả về cùng một mã thông báo có cùng giá trị <60 ngày. Bất kỳ đề xuất? – miloshes

+0

tôi có cả hai bộ này và tôi có mã thông báo 60 ngày. nhưng sau đó tôi đã xóa ứng dụng khỏi cài đặt ứng dụng của mình và giờ tôi chỉ nhận được mã thông báo 2 giờ :(bất kỳ ý tưởng nào? – jasongregori

3

Bạn có thể đặt mã thông báo 2 giờ theo chương trình khi hết hạn sử dụng HTTP DELETE thành me/permissions, điều này sẽ buộc người dùng phải xác thực lại ứng dụng của bạn. Mà sẽ cung cấp cho bạn một mã thông báo 60 ngày.

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