cks*_*ubs 2 macos cocoa objective-c
我正在通过登录API [NSHTTPCookieStorage setCookie].
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSHTTPCookieStorage_Class/Reference/Reference.html
如果我在浏览器打开时登录,已经使用同一用户登录到同一站点,则应用程序和浏览器都可以继续正常工作.
但是,如果我是Quit我的浏览器,再次打开它,然后返回该网站,cookie就会丢失.用户未登录.
这里发生了什么,是否有办法强制应用程序使用与浏览器不同的cookie?
或者,如果我们在应用程序之间"共享"cookie,是否有任何方法可以使用已登录用户的cookie登录我的应用程序而无需用户名/密码?
以下是根据您的要求创建新cookie的代码:(未在XCode中测试)
// Dictionary of attributes for the new cookie
NSDictionary *newCookieDict = [NSMutableDictionary
dictionaryWithObjectsAndKeys:@".example.com", NSHTTPCookieDomain,
@"Test Cookie", NSHTTPCookieName,
@"/", NSHTTPCookiePath,
@"test1234567890", NSHTTPCookieValue,
@“2011-10-26 00:00:00 -0700", NSHTTPCookieExpires, nil];
// Create a new cookie
NSHTTPCookie *newCookie = [NSHTTPCookie cookieWithProperties:newCookieDict];
// Add the new cookie
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:newCookie];
Run Code Online (Sandbox Code Playgroud)
特别注意字典的最后一个元素