V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xieweizhi007
V2EX  ›  程序员

在github上注册了一个应用,在iOS下怎么实现oAuth认证呢?

  •  
  •   xieweizhi007 · 2014-01-09 21:11:07 +08:00 · 3468 次点击
    这是一个创建于 3751 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请问如何引导用户在浏览器上认证,认证结束会返回应用,步骤是什么?
    9 条回复    1970-01-01 08:00:00 +08:00
    aisensiy
        1
    aisensiy  
       2014-01-09 23:16:52 +08:00
    我建议你看看 shareSDK
    clarkhtse
        2
    clarkhtse  
       2014-01-10 13:48:13 +08:00
    我写了一个应用(https://itunes.apple.com/cn/app/octopage-blogging-jekyll-markdown/id649843345?mt=8) 可以在移动端操作你架在github pages的jekyll powered的博客, 用的也是OAuth. 很简单,你需要在返回的callback中使用自定义的URL Scheme就好。
    sd4399340
        3
    sd4399340  
       2014-01-10 17:22:19 +08:00
    @clarkhtse 好东西啊,有空试试~
    xieweizhi007
        4
    xieweizhi007  
    OP
       2014-01-10 18:48:10 +08:00   ❤️ 1
    @clarkhtse 你好,我就是不知道怎么设置URL Scheme呢.
    clarkhtse
        5
    clarkhtse  
       2014-01-11 13:03:19 +08:00
    @xieweizhi007 很简单的, 你在iOS app端自定义URL Scheme (可以参考文章: http://www.idev101.com/code/Objective-C/custom_url_schemes.html) 比如我定义的是githubpagesmobile

    接着在Github设置中的Application添加一个应用
    将Authorization callback URL设置为githubpagesmobile://oauth_callback

    最后在app端加入处理这个callback的逻辑,比如获取access token, 这样一来就可以了
    clarkhtse
        6
    clarkhtse  
       2014-01-11 13:05:14 +08:00
    @sd4399340 谢谢 我在想要不要发个帖子 给大家一些promo code来用一下看看大家的反馈
    kidlj
        7
    kidlj  
       2014-01-11 14:43:32 +08:00
    @clarkhtse 真棒
    sd4399340
        8
    sd4399340  
       2014-01-12 20:27:54 +08:00 via iPhone
    @clarkhtse 可以来个活动撒!
    favormm
        9
    favormm  
       2014-01-13 10:20:16 +08:00
    @clarkhtse
    这是你写的app呀,非常不错。 你能说说你的思路吗?jekyll生成静态html的过程是在什么地方做的?手机还是后台?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3084 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:32 · PVG 08:32 · LAX 17:32 · JFK 20:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.