繁体   English   中英

ASWebAuthenticationSession/SFAuthenticationSession中callbackURLScheme的作用是什么?

[英]What's the role of callbackURLScheme in ASWebAuthenticationSession/SFAuthenticationSession?

我很惊讶我不能或多或少清楚地解释 callbackURLScheme (incl.completionHandler)的逻辑是如何工作的。

是的,一般来说,很明显它具有 url 架构,可以在 plist 文件中指定,以及深度链接的工作方式。

然而,

  • 它究竟是如何绑定到 ASWebAuthenticationSession/SFAuthenticationSession 流的? 我的意思是,它是否在浏览器 url 中寻找类似的模式,如果它变得相等,它会拦截响应,关闭浏览器 window 并返回对应用程序的访问?

  • 如果没有定义 url 架构,但我只是使用关联域怎么办? 我应该指定传递给服务器的“返回”url,还是应该有模式?

  • 如果我通过 null 怎么办? 互联网上有一些注释,它以某种神奇的方式绑定到 plist 文件,但同样,没有关于此的特定文档。

真的很感激答案!

ASWebAuthenticationSession 真的有点神秘。 Swift header 可以说明一些问题。 (跳转到定义:Command+右键Xcode中的ASWebAuthenticationSession class)

完成后,服务将发送带有身份验证令牌的回调 URL,此 URL 将由 ASWebAuthenticationSessionCompletionHandler 传递给应用程序。 回调 URL 通常有一个自定义的 URL 方案。 为了让应用程序接收回调 URL,它需要在其 Info.plist 中注册自定义 URL 方案,或在初始化程序中将方案设置为 callbackURLScheme 参数。

实际上,我的测试表明,在 ios 14 上,它按描述工作。 您需要注册自定义 URL 方案并为相应的参数提供 nil 或只输入参数。 或两者。 成功登录的完成按预期调用。 文档中未提及此类详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM