回调 URL 未调用 completionHandler

Callback URL not calling completionHandler

我正在尝试使用 ASWebAuthentication 来促进 Oauth 1.0 的身份验证过程。之后 用户输入他们的凭据并批准我的申请,oauth 提供者使用我传入的 redirect_url,com.me.appName:/returnToApp Safari window 看起来像这样:

这是我的代码:

func getAuthTokenWithWebLogin(context: ASWebAuthenticationPresentationContextProviding) {
      let callbackUrlScheme = “scheme:/returnToApp"
      let authURL = URL(string: Constants.authURL)
     

      guard authURL != nil else{return}
      let webAuthSession = ASWebAuthenticationSession.init(url: authURL!, callbackURLScheme: callbackUrlScheme, completionHandler: { (callBack:URL?, error:Error?) in

          // handle auth response
          guard error == nil, let successURL = callBack else {
              return
          }

          let oauthToken = NSURLComponents(string: (successURL.absoluteString))?.queryItems?.filter({[=11=].name == "code"}).first

          // Do what you now that you've got the token, or use the callBack URL
          print(oauthToken ?? "No OAuth Token")
      })
      
      // New in iOS 13
      webAuthSession.presentationContextProvider = context
      // Kick it off
      webAuthSession.start()
  }

我认为这不是 ASWebAuthentication 的问题,因为我在尝试使用第三方库 OauthSwift 时遇到了同样的问题

我的错;我没有意识到 callbackURL 必须是 myApp:// 格式,而我的格式是 myApp:/(单斜杠),我认为这也可以。