私はiOSアプリケーションを持っています.HTMLコンテンツをwebview内で読み込んでいます。 htmlはログインページであり、ユーザーの資格情報はajax経由でサーバーに送信され、認証の成功/失敗の応答が受信されます。ここで、応答は、私は同様にObjective-Cの側に取り込むことができる(Set-Cookie
ヘッダフィールドの)クッキーが含まれ、UIWebviewブラウザのcookieをdocument.cookieで読み取ることができません
NSDictionary* headers = [(NSHTTPURLResponse *)response allHeaderFields];
NSString *strCookies = [headers valueForKey:@"Set-Cookie"];
NSLog(@"cookies -> %@", strCookies);
同じ応答はまた、私がブラウザ内で使用responseText
が含ま:
Ajax("/login", "POST", { onsuccess : function(response){
/* Do HTML stuff with response */ }
});
これで、(ログインページの後に)追加のajaxリクエストを作成するためにクッキーが必要になりました。ただし、クッキーはWebviewブラウザ内で設定されていません。 document.cookie
を検索すると、空の文字列が返されます。 xhr.getAllResponseHeaders()
を使用してすべての応答ヘッダーを印刷できますが、xhrオブジェクトのSet-Cookie
フィールドにアクセスすることはできません。
どのようにしてクッキーをウェブビュー内で設定できますか?それともObj-C経由ですべてのAjaxリクエストを行うしかないのですか?
@fenderplayerこの回答はお役に立ちましたか? –