iOS UIWebView无法识别目标网站的更改?

时间:2014-04-21 10:37:39

标签: ios objective-c uiwebview nsurlrequest

我有一个iPhone应用程序,它使用UIWebView显示我作为更大的.net应用程序的一部分构建的网站。一切都运行得很漂亮,直到我网站上的变化。现在iOS应用程序中发生的事情是,修复网站本身问题的更改没有出现在UIWebView中。我通过使用完全相同的URL访问我的iPhone上的Safari并且所有更改都已存在,验证了更改已到位。为什么识别WebSite的应用程序没有变化?

加载网站的代码如下。不幸的是,我不得包含实际的URL。我对iOS很新,所以请善待:)

- (void)viewDidLoad
{
    [super viewDidLoad];

    UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@" " style:UIBarButtonItemStyleBordered target:nil action:nil];
    [[self navigationItem] setBackBarButtonItem:backButton];

    // Set Logo in Navbar
    self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Logo"]];


    NSString *urlString = @"http://website.com/page.aspx";

    NSURL *url = [NSURL URLWithString:urlString];

    NSURLRequest *request = [NSURLRequest requestWithURL:url];

    [webView loadRequest:request];
}

3 个答案:

答案 0 :(得分:0)

使用此

修改您的代码
- (void)viewDidLoad {

    [super viewDidLoad];

    UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@" "
                                                                   style:UIBarButtonItemStyleBordered
                                                                  target:nil
                                                                  action:nil];
    [[self navigationItem] setBackBarButtonItem:backButton];

    // Set Logo in Navbar self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Logo"]];

    NSString *urlString = @"http://website.com/page.aspx";

    NSURL *url = [NSURL URLWithString:urlString];

    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [[NSURLCache sharedURLCache] removeAllCachedResponses];

    [webView loadRequest:request];
}

答案 1 :(得分:0)

嘿,你可以尝试下面的行,但如果网站在某个时间间隔内更改内容,这将是一个很好的方法

[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:YOUR_WEBSITE_URL] cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:10.0]];

或者你可以简单地

NSMutableURLRequest  *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:strurl]];

[request setHTTPShouldHandleCookies:NO];

setHTTPshouldhandlecookie为NO,因此不会保存任何cookie,每次它都会用于远程资源。

同样,要从UIWebview中删除Cookie,请选中this link out。希望帮助你!

答案 2 :(得分:0)

问题不在于重装。它在UIWebView中处理的呼叫与在iPhone浏览器中的Safari中的处理方式不同