/
oauth.go
35 lines (27 loc) · 919 Bytes
/
oauth.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main
import (
"os"
"github.com/mrjones/oauth"
)
var gAccessToken *oauth.AccessToken
func newOauthConsumer() *oauth.Consumer {
consumerKey := os.Getenv("TWITTER_CONSUMER_KEY")
consumerSecret := os.Getenv("TWITTER_CONSUMER_SECRET")
provider := oauth.ServiceProvider{
RequestTokenUrl: "https://api.twitter.com/oauth/request_token",
AuthorizeTokenUrl: "https://api.twitter.com/oauth/authorize",
AccessTokenUrl: "https://api.twitter.com/oauth/access_token",
}
return oauth.NewConsumer(consumerKey, consumerSecret, provider)
}
func storeOAuthAccessToken(accessToken *oauth.AccessToken) {
gAccessToken = accessToken
username := accessToken.AdditionalData["screen_name"]
findOrCreateUser(username,
accessToken.Token,
accessToken.Secret)
}
func restoreOauthRequestToken(token string, secret string) oauth.RequestToken {
t := oauth.RequestToken{Token: token, Secret: secret}
return t
}