我正在编写一个 iPhone 应用程序的计划,用于管理您在 GitHub 上的存储库。这是大学作业。
我可以从 Objective-C 进行 OAuth,它是如何工作的?它只是加载内置浏览器的“使用 GitHub 登录”按钮,还是用户名/密码组合?
我是否能够从中取回生成的令牌并使用 Core Data 存储它,直到用户强行注销?
我正在编写一个 iPhone 应用程序的计划,用于管理您在 GitHub 上的存储库。这是大学作业。
我可以从 Objective-C 进行 OAuth,它是如何工作的?它只是加载内置浏览器的“使用 GitHub 登录”按钮,还是用户名/密码组合?
我是否能够从中取回生成的令牌并使用 Core Data 存储它,直到用户强行注销?
你绝对可以——可以通过 GitHub 的基于 Web 的身份验证流程,或者使用他们的“非 Web 应用程序”替代方案。两者都在这里详细介绍。
然而,许多开发人员已经为各种语言创建了 GitHub API 库,包括在 GitHub 自己的库页面上列出的 Objective-C库。您可能会发现它更容易,并且您可以随时修改它(并希望将您的更改贡献回来!)如果您需要做库不支持的事情。
您可以查看我在 iOctocat 中使用的身份验证代码:https ://github.com/dennisreimann/ioctocat
在后台,我使用的是带有 OAuth2 扩展的 AFNetworking,这使得大部分通信变得非常容易。可以在此处找到该应用程序正在执行的自定义操作: https ://github.com/dennisreimann/ioctocat/blob/master/Classes/GHBasicClient.m
希望这可以帮助你:)