2010-10-19 33 views
13

Làm cách nào để sử dụng OAuth trong ứng dụng Java GWT của tôi? Đặc biệt, tôi muốn có được một danh sách người dùng trong phạm vi của Google Aps của tôi, sử dụng API này:Tôi làm cách nào để sử dụng OAuth trong ứng dụng GWT của mình?

http://code.google.com/googleapps/domain/profiles/developers_guide_protocol.html

Tôi biết điều này nghe có vẻ như một câu hỏi, mà có lẽ đã được hỏi nhiều lần trước đây, nhưng tôi không thể tìm thấy bất kỳ mã Java nào về cách nhận ra các bước OAuth được mô tả trong API ở trên.

Tôi rất vui nếu ai đó có thể chia sẻ một số mã hoặc chỉ cho tôi các tài liệu phù hợp.

Trả lời

4

Ý của bạn là gì trong ứng dụng GWT? Bạn có nghĩa là chỉ phía máy khách?

Vì trên máy chủ, bạn có thể dễ dàng sử dụng thư viện OAuth Scribe.

Tài liệu này có tài liệu tốt và khá đơn giản để sử dụng.

+0

tôi sẽ cần xác thực phía máy chủ, vì tôi không muốn người dùng có thể chỉnh sửa danh sách người dùng cho tên miền của mình . Nhưng tôi không chắc chắn, nếu Scribe là những gì tôi đang tìm kiếm. Để sử dụng nó, bạn cần có API_KEY và API_SECRET. Tuy nhiên, Google không cung cấp cho API hồ sơ ứng dụng. Theo như tôi hiểu điều này là bởi vì người ghi chép là dành cho 2 chân-auth và những gì tôi đang cố gắng đạt được là 3 chân-auth, có nghĩa là, tôi thích người dùng để xác thực với Google, không phải máy chủ của tôi với Google, phải không? – JochenJung

+0

Có không may là bạn đúng (tôi nghĩ), Scribe chỉ giúp cho 2 chân auth. Tuy nhiên tôi sẽ có một cái nhìn kỹ lưỡng hơn về nó (mặc dù bạn có thể đã làm điều đó rồi) và tôi sẽ chỉnh sửa câu trả lời của tôi nếu tôi tìm thấy bất cứ điều gì. – Simeon

+0

Tìm thấy API_KEY và _SECRET trong cài đặt Google Apps. Mặc dù tôi vẫn không chắc liệu nó có hoạt động hay không, tôi nghĩ Scribe là thư viện tốt nhất hiện có. Cám ơn. – JochenJung

7

This tutorial bởi Matt Raible là cách dễ dàng nhất mà tôi từng thấy trên OAuth và gwt. Anh ta cũng có một bức tranh rất hay miêu tả luồng xác thực, mà tôi luôn tìm sự giúp đỡ. Tuy nhiên, như Matt tự nói, giải pháp không phải là 100% đáng tin cậy, nhưng nó vẫn có thể giúp bạn có được một phần của con đường.

Với ý nghĩ này, có thể tốt hơn nếu bạn chỉ cần thực hiện javascript thuần túy. Bạn sẽ tìm thấy một triển khai như vậy right here. This SO thread có thể hữu ích cho bạn nếu bạn chọn đường dẫn đó.

Chúc bạn may mắn nhất.

2

Đối với tích hợp OAuth và GWT, bạn nên bắt đầu với Scribe mà xử lý việc thực hiện các OAuth:

https://github.com/fernandezpablo85/scribe-java

Tiếp theo, bạn cần phải tạo ra một widget GWT có thể xử lý các tương tác của người dùng để có được sự cho phép để truy cập tài khoản của họ. Sau đó lấy mã thông báo phản hồi và thực hiện yêu cầu API tới trang web bên ngoài.

Không có điểm thực hiện lại OAuth khi người ghi chép đã thực hiện nó cho bạn - bạn chỉ cần thực hiện. Tôi có lẽ muốn nhằm sử dụng một Popup GWT để thực hiện việc chứng thực:

http://gwt.google.com/samples/Showcase/Showcase.html#!CwBasicPopup

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