Tôi hiện đang xây dựng một ứng dụng iPhone có phụ trợ đường ray. Tôi đang sử dụng chỉ duy nhất của Facebook Đăng nhập đơn (SSO) trên iphone và xác thực các công trình lớn trên kết thúc khách hàng khá tốt. Tôi đang sử dụng dựa trên đường ray làm phần phụ trợ.Xác thực Rails với Access_token từ Facebook
LƯU Ý tôi đã tham khảo ý kiến Design for Facebook authentication in an iOS app that also accesses a secured web service đã
tôi thấy devise rằng có một cái gì đó gọi là token_authenticable mà chủ yếu là "tấm vé" được mô tả trong bước 5 của chủ đề đó. Đây là dòng điện tôi thấy dấu hiệu sử dụng
- vào facebook SSO trên điện thoại
- người dùng thực hiện một cuộc gọi đến myserver.com/sessions/fb_sso với {access_token: X}
- Trên máy chủ kết thúc (tại SessionsController # fb_sso, tôi sẽ gọi API tới facebook bằng access_token
- Nếu access_token hợp lệ, hãy kiểm tra xem người dùng có tồn tại trong db hay không. user_id: X, devise_auth_token: Y} quay lại cuộc gọi trên 1)
Điều này khá đơn giản. Tuy nhiên, tôi có một vài câu hỏi:
- Với devise_auth_token, điều đó có nghĩa là tôi không còn phải gọi sign_in ("người dùng", tài nguyên) nữa không? (tìm thấy ở đây http://jessewolgamott.com/blog/2012/01/19/the-one-with-a-json-api-login-using-devise/)
- Nơi nào sẽ là nơi tốt nhất để đặt mã cho 3-4?
- Tôi dường như không tìm thấy nhiều về Google về chủ đề này. Tại sao có quá ít hướng dẫn ở đó cho một quá trình rất phổ biến? Tôi có thiếu cái gì đó rõ ràng không?
Bạn có sử dụng đá quý Omniauth cho khả năng kết nối facebook? Kết hợp devise và omniauth sẽ chăm sóc 3 và 4 cho bạn! – MBHNYC
@MBHNYC: sửa tôi nếu tôi sai, nhưng đây chỉ là trường hợp người dùng đăng nhập qua trang web. Trong trường hợp của OP, người dùng đăng nhập thông qua ứng dụng iphone. Trang web không thấy luồng. –
có, nhưng bạn vẫn chuyển cùng một thông tin lên Facebook và các cuộc gọi lại có thể được sửa đổi để không hiển thị bất kỳ chế độ xem nào (hoặc bất kỳ ứng dụng iOS nào), nếu bạn tạo/ghi đè tất cả các bộ điều khiển/lượt xem OP nên có tất cả các công cụ lập trình để đáp ứng yêu cầu. – MBHNYC