自定义登录 Instagram API iOS

Posted

技术标签:

【中文标题】自定义登录 Instagram API iOS【英文标题】:Custom Login Instagram API iOS 【发布时间】:2014-04-12 12:38:42 【问题描述】:

我正在使用 Instagram API 开发具有身份验证功能的 ios 应用程序。

我的身份验证代码运行良好:

NSString *fullURL = [NSString stringWithFormat:@"https://instagram.com/oauth/authorize/?client_id=%@&redirect_uri=%@&response_type=code",KCLIENTID,kREDIRECTURI];
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *request = [NSURLRequest requestWithURL:url];

instagramConnectWebView = [[UIWebView alloc] initWithFrame:self.view.bounds]; 
instagramConnectWebView.delegate = self;
[instagramConnectWebView loadRequest:request];

发送请求时,我的 webView 显示标准 Instagram 登录界面,用户必须在其中插入用户名和密码才能登录。如果登录成功,应用程序将被重定向到我的重定向 URL,我将在其中获取该用户的代码和令牌。

我的问题很简单,有没有办法自定义 Instagram 登录的标准界面?我想在我的应用程序中插入两个简单的 UITextField(一个用于用户名,一个用于密码),当用户单击我的 UIButton 登录时,应用程序应将(POST 或 GET?)用户名和密码发送到 Instagram,并返回响应(登录成功与否)。

我希望我自己解释一下。

谢谢。

【问题讨论】:

您找到解决方案了吗?我也在努力解决这个问题。 我没有,我不知道这是否可能,我仍在使用标准 Instagram api 的界面:( 作为用户,我不会信任为服务创建自己的登录屏幕的应用程序。我认为即使 Instagram oauth 登录屏幕很难看,我认为最好保留它,因为用户发现将凭据直接交给 Instagram 更安全。 【参考方案1】:

您可以使用 javascript 来实现。通过在后台加载 Web 视图:

您需要访问该 web 视图的文本字段并传递自定义 UItextfields 的值,然后您可以调用 webView 的“提交”按钮的 Onclick 事件。

NSString *javaScript = @"document.getElementById('id_username').value = 'tfusername'";
NSString *javaScript2 = @"document.getElementById('id_password').value = 'tfpassword'";

评估您可以调用的每个脚本:[webView stringByEvaluatingJavaScriptFromString:javaScript];

您也可以调用脚本来按下登录按钮。同样的事情对我有用。可能这会对你有所帮助。

【讨论】:

好主意,我会试试的! 更新:Instagram 刚刚更改了他们的登录页面,这不再有效。 @abhineet 我可以在 Instagram 中使用我自己的用户名、密码和 UIButton 文本字段登录吗?请帮我。谢谢。 @Esha 你能帮我制作 Instagram 自定义登录的演示吗?请。 虽然它可能对某些用户有用,但它不是一个可靠的解决方案。 Instagram 可以随时更改其登录页面,您的意志将被打破。【参考方案2】:

我为 iOS 的 Instagram API 创建了一个包装器。看看这个link。这也会让您了解您需要做什么。

【讨论】:

嗨@kkocabiyik 我可以用我自己的textfield 的用户名、密码和UIButton 在Instagram 中登录吗?请帮帮我。

以上是关于自定义登录 Instagram API iOS的主要内容,如果未能解决你的问题,请参考以下文章

ios - Instagram用新的instagram图表api登录?

使用 Instagram 新图形 API 在 iOS 应用程序中登录 Instagram

Instagram API 阻止在成功登录后重定向到 iOS 应用程序并出现 400 错误请求错误

SpringSecurity 认证详解

Instagram api错误错误请求ios

无法使用 api v2.4 在 ios 中使用自定义按钮登录 facebook