因此,我试图让我的应用的用户使用Instagram登录,然后使用他们的access_token来执行对Instagram API的请求。用于Instagram认证的Rails控制器中的发布请求
我看了一个omniauth-instagram轨道宝石,但它似乎并没有像访问令牌一样工作,我似乎无法发送重定向uri。
所以,现在我试图自己做这个授权,以omniauth宝石为例。到目前为止,我有一个链接到Instagram的API在我的html:<a href="https://api.instagram.com/oauth/authorize/?client_id= <%=ENV["INSTAGRAM_KEY"]%>&redirect_uri=<%= "http://localhost:3000/auth/instagram/request_token" %>&response_type=code">Instagram</a>
重定向-URI再谈到这个方法:
def request_token
@code = params[:code]
uri = URI.parse('https://api.instagram.com/oauth/access_token')
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Post.new(uri.request_uri)
request.set_form_data({
"client_id" => ENV["INSTAGRAM_KEY"],
"client_secret" => ENV["INSTAGRAM_SECRET"],
"grant_type" => "authorization_code",
"redirect_uri" => "http://localhost:3000/auth/instagram/access",
"code" => @code
})
end
我需要网/ HTTPS。仍然会发生的唯一情况是显示与request_token相关联的视图。 http请求似乎没有发生任何事情。我很新使用net/http。我错过的东西可能非常明显,但我只是看不到它。一些帮助将非常感激。