【发布时间】:2011-11-01 13:58:07
【问题描述】:
我正在使用 Instagram API,但我被困在他们的 OAuth 的第 2 步。我有一个从他们重定向回给我的代码,但是他们希望我用下面的参数做一个帖子......
curl \
-F 'client_id=CLIENT-ID' \
-F 'client_secret=CLIENT-SECRET' \
-F 'grant_type=authorization_code' \
-F 'redirect_uri=YOUR-REDIRECT-URI' \
-F 'code=CODE' \
https://api.instagram.com/oauth/access_token
我将其作为 ASP.NET MVC 3 解决方案来实现。我试图像这样实现这篇文章......
WebRequest request = HttpWebRequest.Create("https://api.instagram.com/oauth/access_token");
request.Method = "POST";
request.Headers.Add("client_id", "sdlf0982jiejfopijfp92jjiwoijf90");
request.Headers.Add("client_secret", "39993939393939393939393939393");
request.Headers.Add("grant_type", "authorization_code");
request.Headers.Add("redirect_uri", "http://localhost:34962/Home/Auth");
request.Headers.Add("code", 111111);
var response = request.GetResponse();
return View();
这给了我一个 400 错误,说“需要 client_id”。我已经包含了 client_id,但我显然没有正确实现。
执行第二阶段 OAuth 的“最佳实践”方式是什么?
【问题讨论】:
-
我发现了这个相关的 SO 问题,我认为这是我正在寻找的。 stackoverflow.com/questions/3279888/…
-
如果你更喜欢HttpWebRequest而不是WebClient,请看答案here
标签: c# asp.net asp.net-mvc oauth