간단한 OAuth 클라이언트 Java lib인 ScribeJava의 홈에 오신 것을 환영합니다!
ScribeJava를 사용하는 이유는 무엇입니까?
데드 심플
누가 OAuth/OAuth2가 어렵다고 말했나요? ScribeJava 구성은 할머니도 할 수 있을 만큼 쉽습니다 ! 확인해 보세요:
OAuthService service = new ServiceBuilder ( YOUR_CLIENT_ID )
. apiSecret ( YOUR_CLIENT_SECRET )
. build ( LinkedInApi20 . instance ());
예를 들어 이 한 줄 (가독성을 위해 새 줄 추가)은 LinkedIn의 OAuth API로 ScribeJava를 구성하는 데 필요한 유일한 것입니다.
작업 실행 가능 예제는 여기에 있습니다. 일반적인 사용법: 예제
스레드 안전
원하는 만큼 많은 스레드를 사용하여 ScribeJava를 사용하세요.
자바 7 호환
그게 다야. 이전 환경과 안드로이드 앱에서 사용할 수 있습니다. 참고: 소스에서 컴파일하려면 Java 9 이상이 필요합니다.
비동기 및 기타 HTTP 클라이언트
ScribeJava는 기본적으로 여러 HTTP 클라이언트를 지원합니다.
- ning 비동기 http 클라이언트 1.9.x(maven 모듈 scribejava-httpclient-ning) 예
- 비동기 HTTP 클라이언트 asynchttpclient 2.x(maven 모듈 scribejava-httpclient-ahc) 예
- OkHttp(maven 모듈 scribejava-httpclient-okhttp) 예
- Apache HttpComponents HttpClient(maven 모듈 scribejava-httpclient-apache) 예
- Armeria HTTP 클라이언트(필수 >= Java 8) 예시
- 외부에서 생성된 HTTP 클라이언트 예
해당 Maven 모듈을 pom에 추가하기만 하면 됩니다.
다양한 흐름과 추가 기능 지원
- RFC 6749 OAuth 2.0 인증 프레임워크, 인증 코드 인증 부여, 예
- RFC 6749 OAuth 2.0 인증 프레임워크, 리소스 소유자 비밀번호 자격 증명 인증 부여
- RFC 6749 OAuth 2.0 인증 프레임워크, 클라이언트 자격 증명 인증 부여, 예
- RFC 6749 OAuth 2.0 권한 부여 프레임워크, 액세스 토큰 새로 고침, 예
- RFC 6750 OAuth 2.0 인증 프레임워크: 전달자 토큰 사용
- OAuth 공개 클라이언트(PKCE)에 의한 코드 교환을 위한 RFC 7636 증명 키, 예
- RFC 7009 OAuth 2.0 토큰 취소, 예
- RFC 8628 OAuth 2.0 장치 인증 부여 예시
- RFC 5849 OAuth 1.0 프로토콜, 예
모든(50개 이상) 주요 1.0a 및 2.0 OAuth API를 기본적으로 지원합니다.
- 아사나(https://asana.com/) 예시
- 자동(https://www.automatic.com/) 예
- AWeber(http://www.aweber.com/) 예시
- 박스(https://www.box.com/) 예시
- 데이터포트(https://docs.dataporten.no/) 예시
- Digg(http://digg.com/) 예
- 디스코드(https://discordapp.com/) 예시
- Доктор на работе (https://www.doktornarabote.ru/)
- 드롭박스(https://www.dropbox.com/) 예시
- Etsy(https://www.etsy.com/) 예시
- Facebook(https://www.facebook.com/) 예, Async Apache HTTP 클라이언트의 예, Async Ning HTTP 클라이언트의 예
- Fitbit(https://www.fitbit.com/) 예시
- 플리커(https://www.flickr.com/) 예
- Foursquare(https://foursquare.com/) 예시, 예시
- 프라페(https://github.com/frappe/frappe) 예시
- 프리랜서(https://www.freelancer.com/) 예시
- 천재(http://genius.com/) 예시
- GitHub(https://github.com/) 예시, OkHttp HTTP 클라이언트 예시
- Google(https://www.google.com/) 예, Async Http 클라이언트의 예, 취소 예, PKCEE의 예
- HeadHunter ХэдХантер(https://hh.ru/) 예
- HiOrg-서버(https://www.hiorg-server.de/) 예
- Imgur(http://imgur.com/) 예
- 인스타그램(https://www.instagram.com/) 예시
- Kaixin 开心网 (http://www.kaixin001.com/) 예
- 카카오(https://kakao.com/) 예시
- Keycloak(https://www.keycloak.org/) 예시
- LinkedIn(https://www.linkedin.com/) 예, 예, 사용자 지정 범위의 예
- Mail.Ru(https://mail.ru/) 예, Async Ning HTTP 클라이언트를 사용한 예
- 미디어위키(https://www.mediawiki.org/) 예시
- Meetup(https://www.meetup.com/) 예시, 예시
- Microsoft Azure Active Directory(Azure AD)(http://azure.microsoft.com/) 예
- Microsoft Azure Active Directory(Azure AD) 2.0(http://azure.microsoft.com/) 예
- Microsoft Live(https://login.live.com/) 예
- 부적합(http://misfit.com/) 예시
- 네이버(http://www.naver.com/) 예시
- Odnoklassniki Одноклассники (http://ok.ru/) 예
- Polar(https://www.폴라.com/) 예시
- 핀터레스트(https://www.pinterest.com/) 예시
- 500px(https://500px.com/) 예
- 렌렌(http://renren.com/) 예시
- Salesforce(https://www.salesforce.com/) 예, Async Ning HTTP 클라이언트를 사용한 예
- 시나(http://www.sina.com.cn/ http://weibo.com/login.php) 예, 예
- 스카이락(http://skyrock.com/) 예시
- Slack(https://slack.com/) 예시
- StackExchange(http://stackexchange.com/) 예시
- Things Network(v1-staging 및 v2-preview)(https://www.thethingsnetwork.org/) 예제 v1, 예제 v2 미리보기
- 트렐로(https://trello.com/) 예시
- 텀블러(https://www.tumblr.com/) 예시
- TUT.BY(http://www.tut.by/) 예시
- 트위터(https://twitter.com/) 예시
- uCoz(https://www.ucoz.com/) 예시
- Viadeo(http://viadeo.com/) 예
- VK ВКонтакте(http://vk.com/) 예, 클라이언트 자격 증명 부여 예, 외부 HTTP 클라이언트를 사용한 예
- 운더리스트(https://www.wunderlist.com/) 예시
- Xero(https://www.xero.com/) 예시
- 싱(https://www.xing.com/) 예시
- 야후(https://www.yahoo.com/) 예시, 예시
- 예제 폴더를 확인하세요
소형 및 모듈형
ScribeJava의 코드는 작으며(약 1k LOC) 이해하기 쉽습니다. 여기에는 똑똑하거나 "영리한" 해킹이 없습니다. 'core' 또는 'with apis' Maven 모듈만 사용할 수 있습니다.
Android 지원
android(TM) 애플리케이션과 함께 즉시 사용할 수 있습니다.
안정적이고 방탄
위험으로부터 안전하게 보호할 수 있는 좋은 테스트 범위입니다.
실제로 나쁜 일이 발생하면 ScribeJava의 의미 있는 오류 메시지는 무엇이 잘못되었는지, 언제 어디서 잘못되었는지 정확하게 알려줍니다.
Maven Central에서 가져오세요!
중앙 Maven 저장소에서 ScribeJava를 가져올 수 있습니다. pom.xml 파일에 다음을 추가하면 됩니다.
< dependency >
< groupId >com.github.scribejava</ groupId >
< artifactId >scribejava-apis</ artifactId >
< version >8.3.3</ version >
</ dependency >
그리고 핵심 클래스만 필요한 경우(외부 API(FB, VK, GitHub, Google 등) 특정 코드 없이) '핵심' 아티팩트만 가져올 수 있습니다.
< dependency >
< groupId >com.github.scribejava</ groupId >
< artifactId >scribejava-core</ artifactId >
< version >8.3.3</ version >
</ dependency >
ScribeJava를 어떻게 도울 수 있나요?
우선, Pull Request를 환영합니다. 두 번째 옵션은 기부입니다.
ScribeJava는 언제 XXX(새로운 RFC, 사용자 정의 기능, 새로운 API 등)를 지원합니까?
끌어오기 요청을 보낼 때. 이것이 바로 여기에서 대부분의 변경 사항이 적용되는 방식입니다. 아니면 다른 사람에게 당신을 위해 유급 일자리를 만들어 달라고 요청할 수도 있습니다. 어떤 경우에는 변경(기술적 또는 재정적)에 관심이 있을 때 요청을 직접 구현할 수 있습니다.
유료 컨설팅
귀하 또는 귀하의 비즈니스가 Scribejava에 의존하고 현재 Scribejava에 구현되지 않은 특정 개선 사항이나 새로운 기능이 필요한 경우 유급 직업에 대해 저에게 연락하는 것을 고려하십시오.
2분 이내에 시작하기
시작하기 페이지를 확인하고 시작해 보세요! 이슈를 생성하기 전에 FAQ를 읽어보세요 :)
위키에서 찾을 수 있는 유용한 정보와 답변
또한 서버측 앱을 API(이 경우 트위터)와 쉽게 통합하기 위해 @akoskm이 작성한 환상적인 튜토리얼을 읽어보세요.
질문?
이메일을 보내주시거나 바로 여기 github.com에서 문제를 생성해 주세요.
포크
거기에 나열되어야 할 유용한 포크가 있는 경우 당사에 문의하십시오.