私はREST APIManagerクラスを持っています - サーバAPIを扱うためのシングルトン。 ユーザートークンエンティティを返すログインメソッドがあります。IOS。承認後にユーザーデータを保存する場所
他のすべてのAPIメソッドはトークンを使用してリクエストを行います。 ログイン後にトークンエンティティをどこに保存する必要がありますか? 他のAPIメソッドでそのトークンを使用する方法は?もちろん
、私はNSUserDefaultsにトークン格納し、このようなAPIManagerのメソッドを実装することができます
func createNews(news:NewsEntity, token:TokenEntity){
...
}
をしかし、私は方法でTokenEntity引数から抽象化するために、その良いアイデアだと思います。どうやってするか?
なぜユーザーのデフォルトが推奨されないのかというと、キーチェーンはOSがクリーンアップされるまでこれを永久に保存します。しかし、一般的に私たちは、ユーザーがデフォルトで保存するために使用します。これは、Appがデバイスから削除されたときに削除されるためです。説明していただけますか? – Janmenjaya
お返事ありがとう、セキュリティに関する問題ではなく、主にコード組織に関するものでした。私は質問しました。すべてのAPIメソッドでトークン引数を使用しないようにするには、そのトークンが必要です。私はrxAlamofire、Alamofireを使用します。 –
@ジャンメンジャヤ:基本的に、強力な暗号化を使用して機密情報を保存したいとします。機密性のないものはnsuserdefaultsで問題ありません。たとえば、お使いのデバイスをMacに接続すると、アプリケーションのnsuserdefaultsを簡単に読むことができます。これはセキュリティにはかなり不満です。 – sergio