1

iPadとiPhone用のRedditクライアントを構築しています。他にもクライアントがいることは知っていますが、タブ付きのRedditブラウジングについては本当にクールなアイデアがいくつかあります:D

とにかく、私は最初にバックエンドに取り組んでいて、私のクッキーを処理するための最良の方法は何であるかを考えていました。ASIFormDataRequestとASIHTTPRequestを使用して、Cookieを取得し、ストーリーとユーザーサブレディットをリクエストしています。私の質問は、Cookieの有効期限が切れて、ログインしなくなったことをどのようにして知ることができるかということです。

愚かな解決策(私の意見では)は、何らかのデータ要求を行う前に再度ログインすることです...しかし、それは、まあ、愚かなようです。

別の解決策は、Redditへのさまざまなリクエストに対するさまざまな応答を具体的にチェックし、ログインステータスを取得することです。

さらに良い方法は、iPhoneのCookieストアにRedditに関連付けられているCookieがあるかどうかを確認し、ない場合はログインすることです。それで、それを行う方法はありますか?

4

1 に答える 1

1

redditについての具体的な知識はありませんが、これを処理する通常の方法は、リクエストを作成し、応答として「ログインしていません」というエラーが発生するかどうかを確認することです。

ストアにCookieがあるかどうかを確認することは可能です。

[[NSHTTPCookieStorage sharedHTTPCookieStorage]cookiesForURL:[urlabsoluteURL]]

ただし、Cookieが有効かどうか(サーバー側で期限切れになっている可能性があるか、サーバー側で無効になっている可能性があるか)はわかりません。そのため、「ログインしていません」エラーの応答を確認する必要があります。(APIドキュメントから、redditはセッションCookieのみを設定するように見えますが、永続ストアには表示されません。その場合、[ASIHTTPRequest sessionCookies]を使用してCookieを表示できます。)

于 2010-10-18T07:18:41.700 に答える