ios - Devise with Facebook Omniauth - 如何使用 API 进行身份验证?

标签 ios ruby-on-rails json facebook devise

我有一个运行 Rails 4、Devise 和 Omniauth (Facebook) 的应用程序。一切正常。

现在我想创建一个 IOS 应用程序来访问该数据库。我计划使用 JSON 请求来获取数据并将其发布到我拥有的 Rails RESTfull 资源中来执行此操作。

在开始编写 IOS 应用程序之前,我尝试在命令行上使用 cURL(JSON 请求)来测试从 Web 应用程序检索数据,但 Devise 总是拒绝我,说我必须先进行身份验证。

我应该怎么做?如何使用 JSON 请求、Facebook 用户名/密码进行身份验证并从 Rails 应用程序访问数据?

或者我的想法全错了,我应该以不同的方式来做这件事?

最佳答案

  1. 您必须创建 Facebook APP
  2. 您必须使用 Facebook SDK 才能登录 Facebook
  3. 在使用 SDK 的应用程序中,您必须在 facebook 中登录
  4. 成功登录后,facebook 会返回 api 请求的“访问 token ”。
  5. 您必须使用 ruby​​ on Rails 在服务器上发送“访问 token ”。
  6. 您必须使用gem“koala”或其他才能使用此“访问 token ”访问 facebook api。 6.1 第一步,您必须从 facebook 获取用户信息。 (您将拥有 Facebook UID,并且可能是电子邮件。) 6.2 然后,您必须在数据库中找到当前用户并使用 Devise 方法 sign_in
  7. 登录

你也必须看到这个 gem https://github.com/lynndylanhurley/devise_token_auth

关于ios - Devise with Facebook Omniauth - 如何使用 API 进行身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28055393/

相关文章:

ios - 带有 Swift 5.0 编译器的 Xcode 10.2 - 协议(protocol)继承问题

ruby-on-rails - 在 ActiveRecord 中查询包含来自多个数组的一个或多个 id 的对象

android - 如何在 Android 中使用 HTTP POST 将图像作为 JSON 中的 base64 字符串发送?

ios - StoryBoard 中的 ViewController 使 ViewDidLoad 被调用两次

ios - 什么是 Flurry 的正确桥接头?

ios - DatePicker 出现在多个文本字段中

javascript - rails : "null" instead of an array with 3 elements when trying to use ruby array in javascript

ruby-on-rails - Octopus 可以保留数据库连接池吗?

json - 嵌入式 JSON 结构

jquery - 在jquery和javascript中删除json数组中的所有元素