gpt4 book ai didi

ios - 具有授权的 UIWebView,单击链接时使用相同的身份验证

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:31:41 25 4
gpt4 key购买 nike

我有一个 UIWebView,它使用此代码使用基本授权导航到网页

NSString *authValue = [NSString stringWithFormat:@"Basic %@", AFBase64EncodedStringFromString(basicAuthCredentials)];
[urlRequest setValue:authValue forHTTPHeaderField:@"Authorization"];

现在当一个链接被点击时,webView 的 shouldStartLoadWithRequest 被触发但是页面没有加载,因为下一个页面也需要授权。

有没有办法自动为点击的链接添加授权?

谢谢

最佳答案

如何在 shouldStartLoad 中正确创建新请求

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
BOOL shouldNavigate = NO;
NSString *existingAuthValue = [request valueForHTTPHeaderField:@"Authorization"];
if (existingAuthValue == nil)
{
NSString *authValue = [NSString stringWithFormat:@"Basic %@", AFBase64EncodedStringFromString(basicAuthCredentials)];
[request setValue:authValue forHTTPHeaderField:@"Authorization"];
NSMutableURLRequest *newRequest = [NSMutableURLRequest requestWithURL:request.URL];
//Append any other info from the old request
[webView performSelector:@selector(loadRequest:) withObject:newRequest afterDelay:0];
}
else
{
shouldNavigate = YES;
}
return shouldNavigate;
}

编辑:抱歉,我没有考虑到 NSURLRequest != NSMutableURLRequest。我会更新代码。

关于ios - 具有授权的 UIWebView,单击链接时使用相同的身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12828239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com