2010-04-10 26 views
7

Mọi người, tôi đang cố gắng học đường ray và tôi đang làm việc trên một ứng dụng sử dụng Google để đăng nhập và cũng cho dữ liệu lịch. Tôi hiện đang làm việc để định cấu hình authlogic-oauth và gặp một số vấn đề.Định cấu hình authlogic-oauth bằng google

Tôi đã làm theo hướng dẫn dành cho trình cắm thêm authlogic-oauth (xem liên kết ở trên), và tôi đang ở bước 4 và 5. Trước hết, tôi vẫn đang học ngôn ngữ và tôi không chắc chắn nơi mã từ bước 4 đi trong các bộ điều khiển:

@user_session.save do |result| 
    if result 
    flash[:notice] = "Login successful!" 
    redirect_back_or_default account_url 
    else 
    render :action => :new 
    end 
end 

Thứ hai, tôi đang cố gắng để thiết lập bước 5, bước dữ liệu oauth Google thực tế:

class UserSession < Authlogic::Session::Base 
    def self.oauth_consumer 
    OAuth::Consumer.new("*TOKEN*", "*SECRET*", 
    { :site=>"**http://google.com**", 
     :authorize_url => "*http://google.com/xxx*" }) 
    end 
end 

tôi không hoàn toàn chắc chắn nơi tôi tìm thông tin tôi cần để điền thông tin này. Tôi đã đọc hxxp: //code.google.com/apis/accounts/docs/OAuth_ref.html (xin lỗi tôi chỉ có thể đăng một siêu liên kết), nhưng tôi chỉ không chắc chắn nơi tôi nhận được mọi thứ và những gì các plugin xử lý cho chính nó.

Cuối cùng, tôi không hoàn toàn chắc chắn cách tôi truy xuất thông tin lịch, tôi vừa được một người nào đó trên IRC cho biết. Tôi có làm điều đó thông qua plugin này hoặc tôi có phải sử dụng một plugin khác không?

Cảm ơn bạn rất nhiều!

Trả lời

1

Cách đăng nhập bằng Google OAuth vào ứng dụng Ruby on Rails của bạn, bạn có thể đọc tại manu-j blog. Có đề cập trong đoạn đầu tiên làm thế nào để có được những chìa khóa. Bạn phải đăng ký tên miền của mình với google.

Nhưng điều này chỉ đăng nhập vào ứng dụng của bạn, chứ không phải vào tài khoản google của bạn. Nghe có vẻ như bạn nghĩ sau khi đăng nhập với OAuth, bạn có thể truy cập tất cả các ứng dụng google và dữ liệu được lưu trên google (như lịch). Dịch vụ OAuth tương tự như OpenID. Cả hai chỉ là dịch vụ để xác thực người dùng trong ứng dụng của bạn (thay vì đăng ký vào ứng dụng của bạn).

Nếu bạn muốn sử dụng một số dữ liệu lịch Google trong ứng dụng của mình, bạn có thể bắt đầu với Googlecalendar gem, rails pluginexample.

+0

thực sự không chính xác. OAuth được thiết kế đặc biệt để ủy quyền, không được xác thực. Và điều đó bao gồm quyền truy cập bảo mật vào dữ liệu cá nhân. Twitter (và một vài người khác) chỉ cần sử dụng nó để cũng tăng gấp đôi như một phương pháp xác thực. http://en.wikipedia.org/wiki/OAuth –

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