【问题标题】:Launching Safari from an iPhone app using NSMutableURLRequest and OAuth使用 NSMutableURLRequest 和 OAuth 从 iPhone 应用程序启动 Safari
【发布时间】:2010-11-10 04:25:43
【问题描述】:

在 Safari 中启动 URL 在 iPhone 应用程序中非常简单 - UIApplication 的 openURL 方法。

但是,我正在做一些 OAuth 的事情,并想关注 pattern that pownce used to handle OAuth。但是自从OAuth wants me to explicitly set the Authorization header之后,我不知道如何进行。我可以通过 NSMutableURLRequest 设置标头...但这如何转化为创建我的应用可以传递给 UIApplication 方法的 NSURL?

【问题讨论】:

    标签: iphone oauth


    【解决方案1】:

    在服务器到服务器交互期间,将 OAuth 参数从消费者传递到服务提供者的推荐方法是使用 HTTP 授权标头。但是当用户被消费者重定向到服务提供者时,OAuth 实际上指定应该使用 HTTP GET 请求(参见第 6.2.1 节,我无法链接 b/c 我是新用户,只能发布一个超链接——非常烦人的 StackOverflow)。因此,无需将 NSURLRequest 传递给移动 safari,只需按照您的描述打开 URL。

    如果您有兴趣查看 iPhone 上完整 OAuth 流程的代码示例,请随时查看sample FireEagle app I wrote。它的实现方式与 Pownce 应用程序大致相同。

    【讨论】:

    • 非常感谢您的参与,迈克!
    【解决方案2】:

    据我所知,在 iPhone 应用程序中实现 OAuth 支持的常用方法是呈现一个带有 web 视图的模式表。这允许您使用带有自定义标头的 NSURLRequest。

    【讨论】:

    • 这是事实,但在您自己的应用程序中呈现页面与 OAuth 的精神背道而驰。
    猜你喜欢
    • 1970-01-01
    • 2010-10-23
    • 2011-07-22
    • 2023-03-21
    • 2011-02-08
    • 2011-10-21
    • 2018-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多