Tag: 表示

禁用cachingAlamofire iOS

我试图使用Alamofire进行iOS请求时禁用caching。 当我尝试向服务器发出请求,然后以不同的用户身份进行身份validation时发出请求,我得到一个304状态码。 我试过这个链接的一切,所有这些都不工作或导致错误。 后端使用Express.js处理请求,并使用Passport.js进行用户身份validation。 在Alamofire和iOS应用程序上禁用caching的正确方法是什么? 还是有什么我可以做,以防止这种情况发生在后端? 无论哪种方式,我不太确定下一步如何前进。 更新 看了这个问题多一点,看起来Alamofire发送完全相同的authentication信息,即使是传递到authentication部分的信息是完全不同的。 但是,如果我等几分钟再次尝试请求,它会更新到正确的身份validation信息。 即使您在新请求中更新身份validation信息,也几乎可以将身份validation信息caching几分钟。 所以你不能改变authentication信息,直到每几分钟清除一次。 这使得更less的意义。 更新2 以下是我的代码 func reloadData() { print("Reloading data!!") let headers: HTTPHeaders = [ "testvalidationtoken": "test", ] let keychain = KeychainSwift() let email: String = keychain.get("email")! let password: String = keychain.get("password")! var configuration = URLSessionConfiguration() configuration.urlCache = nil var manager : SessionManager = SessionManager(configuration: […]

万能链接打我的服务器?

我已经在我的iOS应用程序上使用我的后端的别名子域名(如sudomain.mydomain.com来设置Universal Links。 我想让没有安装应用程序的用户redirect到App Store中的页面,而不是在我们的服务器上触发一些不存在的端点(我们没有webapp只有一个移动后端)。 我正在考虑做这样的事情: app.get('*', (request, response) => { const domain = request.headers.host, subdomain = domain.split('.'); if ( subdomain[0] === 'subdomain'){ response.redirect('www.linktoappstore.com'); } … }); 不过,我不希望这会干扰通用链接的人安装了应用程序。 通用链接是否get发送到我的服务器的请求,或iOS是否在这种情况发生之前拦截它们?