Single sign on ASWebAuthenticationSession仅显示取消按钮

Single sign on ASWebAuthenticationSession仅显示取消按钮,single-sign-on,sfsafariviewcontroller,sfauthenticationsession,aswebauthenticationsession,Single Sign On,Sfsafariviewcontroller,Sfauthenticationsession,Aswebauthenticationsession,我正在使用ASWebAuthenticationSession对我们的web服务进行身份验证,出于某种原因,最终重定向后的唯一选项是取消。我之前已经做过这样的工作,即使我按了Cancel,回调Url也是通过完成处理程序发送的,我能够在那里解析令牌表单。但是现在我只得到了错误ASWebAuthenticationSessionErrorCodeCanceledLogin 如何让ASWebAuthenticationSession显示Done按钮并使用回调Url完成处理程序?上次iOS更新中是否有更

我正在使用
ASWebAuthenticationSession
对我们的web服务进行身份验证,出于某种原因,最终重定向后的唯一选项是取消。我之前已经做过这样的工作,即使我按了Cancel,回调Url也是通过完成处理程序发送的,我能够在那里解析令牌表单。但是现在我只得到了错误
ASWebAuthenticationSessionErrorCodeCanceledLogin

如何让
ASWebAuthenticationSession
显示Done按钮并使用回调Url完成处理程序?上次iOS更新中是否有更改或中断

如何创建会话 完成处理程序 输出 回调Url:(null),错误:错误域=com.apple.AuthenticationServices.webauthenticationsessioncode=1”(null)

正如我提到的,这在以前是有效的,我不确定它在哪里坏了。我使用的测试服务没有改变,所以我想知道它是否在框架中,或者我是否遗漏了其他内容


如果web服务将特定标题发送回最终Url,那么
ASWebAuthenticationSession
将显示“完成”按钮并使用Url完成处理程序?

您好,您找到解决方案了吗?这只是一个简单的问题,是否可以自定义与按钮项、取消、重新加载图标一起出现的导航栏,我们自己的一些控制?如果您找到任何解决方案,请提供帮助:)
if (@available(iOS 12.0, *)) {
    self.session = [[ASWebAuthenticationSession alloc]
                    initWithURL:@"http://service.com"
                    callbackURLScheme:@"http://website.com"
                    completionHandler:_sessionHandler];
     [self.session start];
}
_sessionHandler = ^(NSURL * _Nullable callbackURL, NSError * _Nullable error) {
    NSLog(@"Callback Url: %@, Error: %@", callbackURL, error);
    if ( callbackURL != nil ) {
        __block NSString * token = [weakSelf webToken:@"token" fromUrl:callbackURL];
        weakSelf.completionHandler([weakSelf parseWebToken:token], error);
    }
    else
        weakSelf.completionHandler(nil, error);
};