私はAFNetworkingを使用してRESTクライアントを作成しており、アプリケーションの1つのインスタンス内で新しいセッションの作成を開始する機能が必要です。つまり
、私はしたいと思います:
1 - サーバー
2で認証 - いくつかのRESTは
3を呼び出してください -
4 "ログアウト" をシミュレート - 再認証サーバー
5で - いくつかを実行します。より多くのREST呼び出し
AFNetworkingは、初期認証とREST呼び出しを行う上で優れていますが、セッションをクリアして同じインスタンス内で接続を「リセット」する方法を理解できません。
私がASIHTTPを使用したとき、私はちょうどでした:
[ASIHTTPRequest clearSession];
AFNetworkingと同様のことをする方法はありますか?
AFNetworkingで基本認証の資格情報をリセットする
8
A
答えて
1
私が知る限り、残りの呼び出しはセッションベースではありません。つまり、特定の通話で認証セッションとログアウトセッションをシミュレートすることはできません。あなたができると思うのは、エンドポイントに対して行われたすべてのコールに対して認証することです。したがって、すべてのエンドポイント(メソッド)に対して、呼び出し元を認証します。私はあなたが安らかなシステムでできることを賭けていると思います。
9
AFHTTPClient
を使用してください(サンプルプロジェクトのAPIクライアントを参照)。
資格証明は-setAuthorizationHeaderWithUsername:password:
で設定できます。 HTTPクライアントから作成された各リクエストには、ブラウザセッションのような種類のHTTPヘッダーAuthorization
があります。
ユーザーがログアウトするか、資格情報をクリアする場合は、-clearAuthorizationHeader
を実行します。
2
さらに簡単です。
[request setHTTPShouldHandleCookies:NO];
関連する問題
- 1. WWW :: Mechanizeの基本認証資格情報を設定する
- 2. Javascriptのスプリング基本認証資格情報
- 3. クライアントの資格情報AFNetworking
- 4. Shippable + AWS ECR:プッシュイメージ - 基本認証資格情報なし
- 5. ジェンキンスアマゾンECR:なし基本認証資格情報
- 6. pymongo認証ユーザーの資格情報
- 7. AWSDatabaseMigrationServiceエラー:認証資格情報なし
- 8. SVNリポジトリ認証 - 資格情報は
- 9. JSch PAM認証 - "認証失敗" - 資格情報が正しい
- 10. Outlook資格情報でWindows IDを認証する
- 11. Cognitoのユーザープールの資格情報でユーザーを認証します。
- 12. Google Appsユーザーアカウントの資格情報を認証する
- 13. github資格情報を認証するためのシェルスクリプト
- 14. 資格情報や認証情報からメールアドレスを取得する方法は?
- 15. URLと基本認証資格情報を持つscrapyシェルはどのように使用できますか?
- 16. アプリケーションプール資格情報を使用して基本認証でAPI呼び出しを行います。
- 17. のSOAPHeaderクラスの認証資格情報を渡す
- 18. HtmlUnit WebClientを使用してすべての要求に基本認証資格情報を渡す
- 19. 資格情報
- 20. 資格情報
- 21. angular2で認証資格情報を送信
- 22. VS2017でNuGet資格情報をリセットする
- 23. Jenkins Packer AWS資格情報の検証
- 24. Android MVP:ログイン資格情報の検証
- 25. 検証IAMユーザーの資格情報
- 26. アプリケーション資格情報をIE認証ポップアップに渡す
- 27. ASP.NETがWindows認証資格情報を渡す
- 28. ユーザーの資格情報とロールを使用したアクティブディレクトリ認証
- 29. WCF認証で資格情報が要求されない
- 30. ASP.netのウェブサイトの認証のためのGmail資格情報
うーん、私はもう少しそれで遊んとクッキーのキャッシュをフラッシュすることは私のためのトリックをやっているように見えるように見えます。:NSHTTPCookieStorage * cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage]。 NSArray * cookies = [cookieStorage cookies]; (Cookie内のNSHTTPCookie * Cookie){ [cookieStorage deleteCookie:cookie]; NSLog(@ "クッキーを削除しました"); } – user1174179
このクッキーのヒントは本当に便利でした。ありがとう。 – Keller
クッキーの消去は、私が探していたものでもありました。 – Harpastum