私のプログラムでは、2 つの関数を呼び出します。1 つ目は aa login で、2 つ目はデータを解析する関数です。
セッションを保存するには、ログイン機能を使用して、Cookie を次のように保存します。
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
[receivedData setLength:0];
if(connection == conn_login){
NSHTTPURLResponse *HTTPResponse = (NSHTTPURLResponse *)response;
NSDictionary *fields = [HTTPResponse allHeaderFields];
cookie = [fields valueForKey:@"Set-Cookie"];
}
}
Cookieを印刷すると、次のようになります。
userid=1; expires=Mon, 05-Aug-2013 19:22:18 GMT; path=/; domain=www.mydomain.com
「userid=1」は私が興味を持っているものです。
したがって、データを解析する次の NSURLRequest では、保存された Cookie を設定するのが好きです。
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL
URLWithString:@"http://www.mydomain.com/?getList"]];
[request setValue:cookie forHTTPHeaderField:@"Set-Cookie"];
しかし、うまくいきません。以前の Cookie は設定されておらず、2 番目のリクエストの完全なヘッダーを出力しても、「ユーザー ID」などはありません。
私は何を間違っていますか?皆さん、ありがとうございました。