Grackle with Heroku and Apigee

32 views
Skip to first unread message

melike

unread,
Mar 27, 2012, 6:26:41 AM3/27/12
to Grackle Development
Heya,
I am trying to setup Grackle with Heroku and Apigee, however it is
giving me Internal Server Error - that is returning a Nil
request_token after I authorize with Twitter. (works fine out of
heroku)

I know I have to setup proxy somehow to use Apigee , but cannot get it
to work on Heroku,
here is some code

before do
session[:oauth] ||= {}
consumer_key = "my key from dev.twitter.com"
consumer_secret = "my secret from dev.twitter.com"


@consumer ||= OAuth::Consumer.new(consumer_key,
consumer_secret, :site => "http://api.twitter.com")

if !session[:oauth][:request_token].nil? && !session[:oauth]
[:request_token_secret].nil?
@request_token = OAuth::RequestToken.new(@consumer,
session[:oauth][:request_token], session[:oauth]
[:request_token_secret])
end

if !session[:oauth][:access_token].nil? && !session[:oauth]
[:access_token_secret].nil?
@access_token = OAuth::AccessToken.new(@consumer,
session[:oauth][:access_token], session[:oauth][:access_token_secret])
end

if @access_token
@client = Grackle::Client.new(:auth => {
:proxy => "http://" + ENV['APIGEE_TWITTER_API_ENDPOINT'],
:type => :oauth,
:consumer_key => consumer_key,
:consumer_secret => consumer_secret,
:token => @access_token.token,
:token_secret => @access_token.secret
})
#@client.transport.proxy = Net::HTTP.Proxy("http://" +
ENV['APIGEE_TWITTER_API_ENDPOINT'],80)
@client.api_hosts['apigee'] =
ENV['APIGEE_TWITTER_API_ENDPOINT']
@client.api = :apigee
end
end


get "/request" do
@request_token = @consumer.get_request_token(:oauth_callback =>
"http://#{request.host}/auth")

session[:oauth][:request_token] = @request_token.token
session[:oauth][:request_token_secret] = @request_token.secret

redirect @request_token.authorize_url
end

get "/auth" do
@access_token = @request_token.get_access_token :oauth_verifier
=> params[:oauth_verifier]
session[:oauth][:access_token] = @access_token.token
session[:oauth][:access_token_secret] = @access_token.secret
redirect "/threads"
end


Reply all
Reply to author
Forward
0 new messages