本文整理汇总了Scala中play.api.libs.oauth.ConsumerKey类的典型用法代码示例。如果您正苦于以下问题:Scala ConsumerKey类的具体用法?Scala ConsumerKey怎么用?Scala ConsumerKey使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ConsumerKey类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。
示例1: credentials
//设置package包名称以及导入依赖的类
package actors
import play.api.Configuration
import play.api.libs.oauth.{ConsumerKey, RequestToken}
trait TwitterCredentials {
val config: Configuration
protected def credentials: Option[(ConsumerKey, RequestToken)] = for {
apiKey <- config.getString("twitter.apiKey")
apiSecret <- config.getString("twitter.apiSecret")
token <- config.getString("twitter.token")
tokenSecret <- config.getString("twitter.tokenSecret")
} yield (
ConsumerKey(apiKey, apiSecret),
RequestToken(token, tokenSecret)
)
}
示例2: Twitter
//设置package包名称以及导入依赖的类
package controllers
import javax.inject.Inject
import play.api.libs.oauth.{ConsumerKey, OAuth, RequestToken, ServiceInfo}
import play.api.{Configuration, Play}
import play.api.libs.ws.WSClient
import play.api.mvc.{Action, Controller, RequestHeader}
class Twitter @Inject()(ws: WSClient, configuration: Configuration) extends Controller {
val oauth = OAuth(ServiceInfo(
"https://api.twitter.com/oauth/request_token",
"https://api.twitter.com/oauth/access_token",
"https://api.twitter.com/oauth/authorize", credentials.get),
true)
private val credentials = for {
apiKey <- configuration.getString("twitter.apikey")
apiSecret <- configuration.getString("twitter.apisecret")
callbackUrl <- configuration.getString("twitter.callbackUrl")
} yield ConsumerKey(apiKey, apiSecret)
def sessionTokenPair(implicit request: RequestHeader): Option[RequestToken] = {
for {
token <- request.session.get("token")
secret <- request.session.get("secret")
} yield {
RequestToken(token, secret)
}
}
def authenticate = Action { request =>
request.getQueryString("oauth_verifier").map { verifier =>
val tokenPair = sessionTokenPair(request).get
// We got the verifier; now get the access token, store it and back to index
oauth.retrieveAccessToken(tokenPair, verifier) match {
case Right(t) => {
// We received the authorized tokens in the OAuth object - store it before we proceed
Redirect(routes.Twitter.index).withSession("token" -> t.token, "secret" -> t.secret)
}
case Left(e) => throw e
}
}.getOrElse(
oauth.retrieveRequestToken("https://localhost:9000/auth") match {
case Right(t) => {
// We received the unauthorized tokens in the OAuth object - store it before we proceed
Redirect(oauth.redirectUrl(t.token)).withSession("token" -> t.token, "secret" -> t.secret)
}
case Left(e) => throw e
})
}
def topArtists = Action {
Ok
}
}