2012-01-16 18 views
5

Trong ứng dụng đường ray của tôi, tôi đang sử dụng oauth để truy cập dữ liệu hồ sơ của người dùng. Vấn đề là khi trang đăng nhập ủy quyền của instagram bật lên, người dùng phải nhập các chi tiết đăng nhập của mình, một cookie được lưu trong máy của tôi. Có cách nào để DELETE cookie này (rõ ràng là không phải bằng tay)? Tôi yêu cầu điều này bởi vì khi trang oauth được gọi lại, cookie này được lưu trong trình duyệt của tôi sẽ tự động đăng nhập vào người dùng. Điều này đã trở thành một mối phiền toái cho dự án của tôi. Tôi không muốn điều này xảy ra, tôi muốn trang đăng nhập tương tự được hiển thị lại.Xóa cookie của trang ủy quyền instagram trong ứng dụng đường ray

+0

Tại sao bạn không muốn đăng nhập tự động khi người dùng đã đăng nhập? Đăng nhập tự động được mong đợi/hành vi hữu ích và làm cho mọi thứ khó khăn hơn cho người dùng của bạn chỉ là trải nghiệm người dùng tiêu cực, nhưng có thể có một cách khác để giải quyết vấn đề của bạn. – djlumley

+1

Nên có một số loại url "đăng xuất" mà bạn có thể truy cập (dưới dạng người dùng) và nó sẽ xóa cookie của chúng. ví dụ. Twitter có [this] (https://dev.twitter.com/docs/api/1/post/account/end_session) – yoavmatchulsky

+0

Trang đăng nhập sẽ không được hiển thị cho người dùng mọi lúc. Thông thường thông tin của anh ta sẽ được lấy từ mã truy cập tôi có trong DB của tôi. Trong trường hợp hết hạn mã thông báo truy cập, anh ta sẽ phải relogin (vì instagram không có token refresh). Vấn đề là khi người dùng nhấp vào liên kết để relogin, cookie instagram được lưu trữ trước đó sẽ tự động bắt đầu ủy quyền. Tôi thực sự muốn loại bỏ cookie này. – serpent403

Trả lời

7

Tôi giả định rằng bạn muốn đăng nhập người dùng ra khỏi instagram cũng như ứng dụng của bạn. Để thực hiện điều đó, bạn có thể gửi trình duyệt của họ tới https://instagram.com/accounts/logout/. Tôi đã nhìn thấy nó được sử dụng như một URL hình ảnh hoặc được tải trong một iframe kích thước bằng không. Tôi nghi ngờ thứ hai là lựa chọn tốt hơn.

Bằng cách đó, nó sẽ yêu cầu đăng nhập instagram một lần nữa lần thứ hai, nhưng sẽ không yêu cầu họ ủy quyền lại ứng dụng của bạn.

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