DEV Community

Discussion on: Conquering Twitter OAuth Authorization in a Rails/React App

Collapse
 
harrisreynolds profile image
Harris Reynolds • Edited

I did a bit of refactoring on the parsing of the response just to avoid relying on the order of the response:

response_data = response.split("&")
@access_token = parse_token_data(response_data, 'oauth_token=' )
@access_secret = parse_token_data(response_data, 'oauth_token_secret=' )
@twitter_user_id = parse_token_data(response_data, 'user_id=' )
@screen_name = parse_token_data(response_data, 'screen_name=' )
Enter fullscreen mode Exit fullscreen mode

With a new method:

def parse_token_data(tokens, token_name)
  tokens.each do |token|
    return token.split("=")[1] if token.index(token_name).present?
  end
end
Enter fullscreen mode Exit fullscreen mode

It will be a bit slower since it iterates over every part of the response, but it does ensure the correct pieces are connected instead of relying on the order.