2017-01-03 17 views
0

我已经写下了以下代码,我从SO上的问题中找到了该代码。无法将cookie发送到WebView目标C

我仍然感到困惑,因为在做完所有这些后,我仍然无法访问我的PHP页面上的cookie。

我在这里做错了什么?

- (void)viewDidLoad { 

    [super viewDidLoad]; 

    UIWebView *webview=[[UIWebView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,self.view.frame.size.height)]; 

    NSString *[email protected]"http://mywebsite.com"; 
    NSURL *nsurl=[NSURL URLWithString:url]; 
    NSMutableURLRequest *nsrequest=[NSMutableURLRequest requestWithURL:nsurl]; 

    NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary]; 
    [cookieProperties setObject:@"testCookie" forKey:NSHTTPCookieName]; 
    [cookieProperties setObject:@"someValue123456" forKey:NSHTTPCookieValue]; 
    [cookieProperties setObject:@"www.mywebsite.com" forKey:NSHTTPCookieDomain]; 
    [cookieProperties setObject:@"www.mywebsite.com" forKey:NSHTTPCookieOriginURL]; 
    [cookieProperties setObject:@"/" forKey:NSHTTPCookiePath]; 
    [cookieProperties setObject:@"0" forKey:NSHTTPCookieVersion]; 

    [cookieProperties setObject:[[NSDate date] dateByAddingTimeInterval:2629743] forKey:NSHTTPCookieExpires]; 

    NSHTTPCookie *cookie = [NSHTTPCookie cookieWithProperties:cookieProperties]; 
    [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie]; 

    [webview loadRequest:nsrequest]; 

} 

回答

1

使用此设置你的对象:

nsrequest.addValue(value: "testCookie", forHTTPHeaderField: NSHTTPCookieName) 
etc... 

对不起,这是斯威夫特3 ^^但是可以转换为对象 -

0

你已经设置的“www.example.com/”的饼干,但你尝试加载“我website.com” - 改变NSHTTPCookieDomain和NSHTTPCookieOriginURL为“mywebsite.com”或尝试在您的请求中加载“www.example.com”!

+0

我已经改变了URL,但忘了在问题发生变化,它仍然没有工作。 –

+0

向我们展示你如何阅读cookie的代码......? – IanW

相关问题