使用Instasharp找不到Instagram的登录页面

时间:2015-08-18 14:01:59

标签: instagram-api instasharp

我正在使用Instasharp库与Instagram进行通信。传递所需参数并构建链接以进行身份​​验证之后。系统显示未找到页面的屏幕(应该是登录的Instagram身份验证页面)

我的代码如下:

*var client_id = ConfigurationManager.AppSettings["instagram.clientid"].ToString();
                var secret = ConfigurationManager.AppSettings["instagram.clientsecret"].ToString();
                var redirect_uri = ConfigurationManager.AppSettings["instagram.redirecturi"].ToString();
                var realtimeUri = "";
                var scopes = new List<OAuth.Scope>();
                scopes.Add(OAuth.Scope.Likes);
                scopes.Add(OAuth.Scope.Comments);
                var config = new InstagramConfig(client_id, secret, redirect_uri, realtimeUri);
                var oauth = new OAuth(config);
                var link = OAuth.AuthLink(config.OAuthUri + "/authorize", config.ClientId, config.RedirectUri, scopes, OAuth.ResponseType.Code);
                Response.Redirect(link);*

请注意,变量链接的最终值如下所示

https://api.instagram.com/oauth//authorize?client_id=Client Id Goes Here&redirect_uri=Redirect URL goes here&response_type=code&scope=likes+comments

一旦应用程序尝试重定向页面,它会向我显示Instagram网站上找不到页面错误。请注意下面的图片

Instagram page not found

请告知以前是否有人遇到类似情况。

1 个答案:

答案 0 :(得分:1)

我今天遇到同样的问题,当时我试图构建一个&#34; Hello World&#34;使用Instasharp Library的MVC5 Web应用程序。

项目主页上的使用入门链接似乎已过时,并且在一些地方包含authenticate部分(这是您的代码所在地)的文字和代码不正确也失败了)。

我已raised an issue为此,并将与项目所有者合作更新文档。同时,请注意link变量值中的额外斜杠。

https://api.instagram.com/oauth//authorize...

问题

所以这是代码中有问题的一行。

var link = OAuth.AuthLink(config.OAuthUri + "/authorize", config.ClientId, config.RedirectUri, scopes, OAuth.ResponseType.Code);

修复

要解决此问题,请在此行代码中删除/前面的authorize。此行的正确代码如下。

var link = OAuth.AuthLink(config.OAuthUri + "authorize", config.ClientId, config.RedirectUri, scopes, OAuth.ResponseType.Code);

这对我有用。它带我到Instagram登录页面。登录后,我的回调网址(我设置为http://localhost:51524/Callback)立即被code调用,我随后将其作为参数发送以获得Oauth响应。