2012-05-12 33 views
10

Tôi cần xác thực bởi OAuth đối với một số trang web (e. G. Flickr) bằng Javascript và tôi muốn tạo trải nghiệm tương tự như nút đăng nhập Facebook. Khi bạn nhấp vào nút đăng nhập, một cửa sổ bật lên được mở ra, bạn xác thực và sau đó cửa sổ bật lên bị đóng và sự kiện onlogin của nút đăng nhập được nâng lên.Xác thực OAuth như Facebook

Có thư viện Javascript nào triển khai hành vi này cho OAuth không?

Trả lời

9

Đây là một tính năng của OAuth 2.0, xác định luồng khách hàng tạo điều kiện thuận lợi cho việc này.

Thông số kỹ thuật là here và việc triển khai Google của nó được mô tả here.

Hỗ trợ cho điều này được bao gồm trong google-api-javascript-client (dành cho API Google và thông tin đăng nhập) và có một thư viện chung sẽ hoạt động với nhà cung cấp được hỗ trợ được gọi là gwt-oauth2 - nó được viết bằng GWT, nhưng cũng có thể sử dụng được trong môi trường JavaScript chuẩn.

chỉnh sửa: Microsoft's Live Connect library dường như cũng hỗ trợ hương vị OAuth 2.0 này.

Thật không may, Flickr dường như không có hỗ trợ cho điều này, vì nó only seems to support OAuth 1.0a.

Nhưng có một số nhà cung cấp phổ biến mà làm hỗ trợ client-side OAuth 2.0 dòng chảy:

  • Google
  • Facebook
  • Foursquare
  • Instagram
  • DailyMotion
  • Windows Live

Bạn có thể chạy máy chủ của riêng mình để thực hiện yêu cầu OAuth 1.0a lên Flickr và gửi lại mã thông báo truy cập OAuth 2.0 cho ứng dụng JavaScript, tôi giả sử.

2

Tôi chắc chắn janrain cung cấp xác thực cho các trang web bảy bằng cách sử dụng node.js, tôi sẽ cho nó xem nhanh. Ngoài ra hãy thử điều này example

+0

Tôi đã thực hiện một số thử nghiệm thành công bằng cách sử dụng sản phẩm janrain RPXnow chỉ với JavaScript. Tuy nhiên, chúng tôi kết hợp điều này với mã thông báo được tạo ở phía máy chủ cục bộ để cố gắng bảo mật nó tốt hơn một chút. – Ruz

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