Eventbrite 重定向 URI iOS OAuthSwift

Posted

技术标签:

【中文标题】Eventbrite 重定向 URI iOS OAuthSwift【英文标题】:Eventbrite Redirect URI iOS OAuthSwift 【发布时间】:2015-05-20 07:33:36 【问题描述】:

我正在尝试弄清楚如何在 Swift 中进行 OAuth。特别是我正在尝试使用 OAuth 2 和 Eventbrite 进行身份验证。我相信我已经完成了相应的设置:

func doOAuthEventbrite()
    let oauthswift = OAuth2Swift(
        consumerKey:    Eventbrite["consumerKey"]!,
        consumerSecret: Eventbrite["consumerSecret"]!,
        authorizeUrl:   "https://www.eventbrite.com/oauth/authorize",
        responseType:   "token"
    )
    oauthswift.authorizeWithCallbackURL( NSURL(string: "eventbriteanalytics://oauth-callback/eventbrite")!, scope: "", state: "", success: 
        credential, response in
        println(credential.oauth_token)
        , failure: (error:NSError!) -> Void in
            println(error.localizedDescription)
    )

但是,当我转到 Eventbrite OAuth 页面时(在我接受我想用我的帐户连接此应用程序之后)我遇到了“糟糕,出了点问题!”错误。网址如下:

https://www.eventbrite.com/oauth/authorize?client_id=REAL_API_ID_HERE&redirect_uri=eventbriteanalytics://oauth-callback/eventbrite&response_type=token

我的预期行为是 redirect_uri 会返回到应用程序。然而,它只是停留在 Safari 中。

作为健全性检查,我能够对 Instagram 应用程序运行 OAuth,一切正常(收到访问代码)并被转发回应用程序本身(所以我的 URL 方案不正确没有问题)。

查看 Eventbrite 文档,他们为 redirect_uri 提供了以下指导:

'此值可根据 API 密钥进行配置,应包含用户在批准或拒绝对您的应用授权后将被重定向到的网址。对于移动客户端、开发或测试目的,您可能希望将此值设置为 http://localhost/。'

我的问题是,如果我的 URL 方案无效,我如何能够在用户进行身份验证后将用户重定向回应用程序,以便我可以检索访问代码并获取访问令牌?

【问题讨论】:

我面临着完全相同的问题。你找到解决办法了吗? 【参考方案1】:

作为健全性检查,我能够对 Instagram 应用程序运行 OAuth,一切正常(收到访问代码)并被转发回应用程序本身(所以我的 URL 方案不正确没有问题)。

您可能是少数必须使用 Swift 工作的人之一。您是否有代码示例,以便我们可以查看您所做的事情并可能帮助您回答问题?

谢谢

【讨论】:

以上是关于Eventbrite 重定向 URI iOS OAuthSwift的主要内容,如果未能解决你的问题,请参考以下文章

Spotify ios SDK 登录:无效的重定向 URI

当提供者不支持自定义 URI 方案时如何重定向到 iOS

(iOS) Spotify 重定向 URI 错误:SpotifyLogin.LoginError.invalidUrl

iOS 应用程序上的无效重定向 URI Linkedin API

ADAL iOS 重定向 URI 必须是 http(s)?

错误:在 ios 应用程序中使用 oath 重定向 uri 对于 vimeo 无效