【发布时间】:2013-12-02 04:50:19
【问题描述】:
它的 grails 项目,
推特认证成功,
如何从收到的这个 oauth_token 中获取 twitter 用户 ID?
谢谢
【问题讨论】:
标签: grails oauth oauth-2.0 twitter-oauth scribe
它的 grails 项目,
推特认证成功,
如何从收到的这个 oauth_token 中获取 twitter 用户 ID?
谢谢
【问题讨论】:
标签: grails oauth oauth-2.0 twitter-oauth scribe
试试这个..,.
配置:
import org.scribe.builder.api.TwitterApi
...
oauth {
providers {
twitter {
api = TwitterApi
key = 'YOUR_KRY'
secret = 'YOUR_SECRET'
callback = "http://localhost:8080/appName/oauth/twitter/callback"
successUri = "http://localhost:8080/appName/myController/twitterSuccess"
failureUri = "http://localhost:8080/appName/myController/twitterFailure"
}
}
}
我的控制器:
def twitterSuccess() {
Token twitterAccessToken = (Token) session[oauthService.findSessionKeyForAccessToken('twitter')]
def twitterResource = oauthService.getTwitterResource(twitterAccessToken, "https://api.twitter.com/1.1/account/settings.json")
def twitterResponse = JSON.parse(twitterResource?.getBody())
def twitterResourceDetailed = oauthService.getTwitterResource(twitterAccessToken, "https://api.twitter.com/1.1/users/show.json?screen_name=${twitterResponse['screen_name']}")
def twitterResponseDetailed = JSON.parse(twitterResourceDetailed?.getBody())
log.info "twitterId = ${twitterResponseDetailed['id']}"
...
}
您可以从我的 git 存储库中获取工作示例。 Grails Oauth Plugin Demo.
【讨论】: