iOS で AmazonServiceException を取得する方法が知りたい

0

Cognito を使っていますが、該当するカテゴリがなかったため、こちらに質問させていただきます。

Cognito を使ったアプリケーションを開発しております。
Cognito については、サンプルコードを参考に実装をしています。
AmazonServiceException について質問があります。
android では、AmazonServiceException 発生時に getStatusCode() で HTTP ステータスコードを取得することができますが、iOS でも同様に AmazonServiceException 発生時に HTTP ステータスコードを取得する方法を教えていただけますでしょうか。

サンプルコードにステータスコードを取得する方法がなかったのと、ドキュメントにも記載が見当たりませんでしたので、ご存知の方がいらっしゃいましたら教えていただけると助かります。

よろしくお願いします。

gefragt vor 6 Jahren290 Aufrufe
4 Antworten
0
Akzeptierte Antwort

HTTP ステータスコードでエラー判別をするという部分に疑問を感じています。エラー時の処理を既に用意されている機能の中で実現できないのでしょうか。

どうしても HTTP ステータスコードを取得する必要があれば、NSHTTPURLResponse のオブジェクトを参照するために、SDK のプライベートメソッドを使用する、プロジェクトにソースコードを取り込んで変更を加えて使用する、低レベルの実装を自前で行う (もはや SDK を使用しないに等しいかもしれません) などの方法が考えられます。

semnil
beantwortet vor 6 Jahren
0

AmazonServiceException に相当するもの、HTTP ステータスコードを簡単に取得する方法は用意されていません。

AWS Mobile SDK for iOS でのエラーハンドリングについては、Android とは根本的に異なることを念頭において開発を行う必要があります。
AmazonServiceException のような包括的な例外をキャッチするのではなく、非同期のメソッドそれぞれでエラー処理を実施する事になります。

AWSTask について、以下に記載がありました。
https://github.com/awsdocs/aws-mobile-developer-guide/blob/5b1207c54f7160d21f598239989b45ec66b37dde/doc_source/how-to-ios-asynchrounous-tasks.rst#using-awstask

semnil
beantwortet vor 6 Jahren
0

ありがとうございました。
お教えいただいた URL を読んでみましたが、HTTP ステータスコードを取得する方法はなさそうでした。
エラー自体の判別は NSError を使って判別しようと思います。
エラー時にステータスコードでエラー判別をしたかったのですが、iOS では無理なのでしょうか。
android のように Exception で取れなくても代替方法があれば教えていただけると助かります。

よろしくお願いします。

beantwortet vor 6 Jahren
0

お返事を書いたのですが、掲載されていないことに気がつきました。
結果として相当遅いお返事になりましたことをお詫びします。

ご回答ありがとうございました。
確かにソースコードに手を入れれば実現できるかもしれませんが、そこまでする必要もないため、設計担当には android と同じことはできない事情を説明して、仕様変更することになりました。

android で取得できるものが、他のプラットフォームで取得できないのは不便ですが、その辺りを仕様で回避することも必要だということがわかりました。

よろしくお願いします。

beantwortet vor 6 Jahren

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen