2010-12-20 4 views
5

これらの目的のために、私は1つのUIWebviewを含むアプリケーションを持っているとしましょう。iPhone - UIWebviewは認証をサイトに保存しません

Facebook、Gmail、Twitterなどのいずれかのサイトにリクエストを読み込み、ログイン画面を受け取っています。

私がログインしてアプリを再起動すると、再度ログイン画面を通過する必要があります。

モバイルSafari/Googleアプリでは、ログインクッキー/セッションの詳細/その他の情報を保持し、ユーザー資格情報を再度入力する必要はありません。それが私が持っている行動です。私が試した

スタッフ:

  • NSURLRequest経由NSHTTPCookieStorageからのCookieを送信します。
  • クッキーを自分自身をNSUserDefaultsに保存しますが、運はありません。

モバイルサファリの動作をどうすれば実現できますか?& Googleのアプリはありますか?

+2

:あなたがすることによってこれを達成することができます。しかしどうですか? – Gilbert

+0

こんにちは@ギルバート私は指定したのと同じ結果を達成しようとしています。あなたは以下の答えを「Accepted」としました。アプリケーションの終了/起動時にクッキーを保存したり読み込んだりする方法を知っていますが、NSURLRequestからクッキーを取得する方法を教えてください。 – ShayanK

+2

NSURLConnectionは、特に指定のない限り、NSURLRequestを表示するクッキーを自動的に保存します。 – Gilbert

答えて

5

クッキーは、アプリが終了するとアーカイブされ、アプリがアクティブになったときに後で再読み込みする必要があります。私は、Googleのアプリがそれをしないことを今見るようにそれは、間違いなく可能です

[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookies:cookies forURL:url mainDocumentURL:nil]; // where cookies is the unarchived array of cookies

+2

明らかに私はアーカイブを台無しにしました。ありがとう、私はそれをチェックし、それは自動的に働いた。 – Gilbert

-1

asiHTTPrequestクラスを使用してください。私のプロジェクトで本当に助けになりました。

+2

ASIHTTPRequestで目標を達成する方法を詳しく教えてください。 – Gilbert

+0

このコードを使用すると、ASIHTTPRequestを使用してクッキーを処理できます。NSHTTPCookie * cookie = [[[NSHTTPCookie alloc] initWithProperties:properties] autorelease]; –

関連する問題