【问题标题】:Broken HTTP basic authentication in web apps on iOS 7?iOS 7 上的 Web 应用程序中的 HTTP 基本身份验证被破坏?
【发布时间】:2013-09-29 08:41:24
【问题描述】:

我正在为一个简单的应用程序使用基本身份验证,但它在 iOS 7 上的 Web 应用程序模式下停止工作。它在 Safari 中工作,它在 Safari 和作为独立 Web 应用程序的 iOS 6 上工作,但是 迁移到 iOS 7 后,它只显示白屏。

有人遇到过同样的问题吗?

【问题讨论】:

    标签: ios web-applications mobile-safari ios7 iphone-standalone-web-app


    【解决方案1】:

    我发现通过从 iis 中删除 windows auth,并只保留设置为域的域为我解决了这个问题。

    试试看。

    【讨论】:

      【解决方案2】:

      我认为这可能与here 描述的对话问题有关。

      标准对话框根本不起作用,例如警报、确认或提示。

      显示用于验证用户身份的登录提示可能被阻止(不起作用或不可见),这就是 Web 应用程序未通过身份验证阶段的原因。

      我想 Apple 将不得不在未来的版本中修复此错误。

      编辑:升级到 iOS 7.0.3 后,基本身份验证突然又开始在主屏幕网络应用程序模式下工作。显示登录提示,一切正常。

      【讨论】:

        【解决方案3】:

        这对我有用。

        + (void) setBasicAuth
        {
          NSURLCredentialStorage* store = 
            [NSURLCredentialStorage sharedCredentialStorage];
        
          NSURLCredential* creds = 
            [NSURLCredential credentialWithUser:@"user" 
                                       password:@"pass"
                                    persistence:NSURLCredentialPersistenceForSession];
        
          NSURLProtectionSpace* protectionSpace = 
            [[NSURLProtectionSpace alloc] initWithHost:@"your-host" 
                                                  port:80 
                                              protocol:@"http" 
                                                 realm:@"Your Realm"
                                  authenticationMethod:NSURLAuthenticationMethodDefault];
        
          [store setCredential:creds forProtectionSpace:protectionSpace];
        }
        

        【讨论】:

          【解决方案4】:

          我遇到了完全相同的问题。将用户名和密码放入您的网络应用程序的 url 和

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-02-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-09-05
            • 1970-01-01
            • 2014-01-26
            • 2010-12-30
            相关资源
            最近更新 更多