問題タブ [moya]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - Swiftジェネリック:「ジェネリックパラメータTを推測できませんでした」
Moya と Object Mapper に基づいて、一般的なリクエスト ハンドラー クラスを作成しようとしています。基本的に、Moya ターゲットへのリクエストを実行し、成功と失敗の両方のケースでいくつかの基本的な処理を実行するメソッドが必要です。
私のクラスは、この答えに基づいて次のようになります:
私の質問は、クラス レベルではなく関数レベルでジェネリックを使用して同じ結果を得ることができるかどうかです。
私はそれを試してみましたが、コードでビルドエラーが発生しました:
Generic parameter "T" could not be inferred
swift - RxSwift で発生する 2 つのイベント
こんにちは、私はいくつかの RxSwift を学んでいます。makeLoginRequest が 2 回呼び出される理由がわかりません...ログインが正しいときに他のコントローラーにプッシュしますが、オブザーバブルは他のイベントを通知するため、次のコントローラーを 2 回プッシュします。 .
viewModel のコードは次のとおりです。
そしてコントローラーで
誰が何が起こっているのか説明できますか?
ありがとう!
ios - iOS: HTTPS GET: アプリがロック画面から戻った後、サーバーからの空の応答
問題: ロック画面からアプリに戻ってから 1 ~ 2 秒以内にHTTPS GET を送信すると、空の応答が返されます。
再現する手順
- アプリを起動します。画面上の TableView にニュースフィードが表示されます。
- iPhoneをロックします。
- iPhoneのロックを解除
- 1 ~ 2 秒以内に TableView で pull-to-refresh を実行し、HTTPS GET リクエストを YouTube に送信して、特定のチャンネルから動画のリストを取得します。
期待される結果: YouTube から動画のリストを含む応答を受け取ります。
実際の結果: Moya から「空の応答」ログが返されました。
注:次の同じプルでリフレッシュが機能します。2 秒待ってからプルして更新すると、完全に機能します。変!
コンテキスト: iOS Swift モヤ
誰が理由を知っていますか?どんな手掛かり?私の頭脳を壊した。
UPD コードへのリンク: https://yadi.sk/d/Feu0FZkdu9ogr 試してみてください。
swift - App Transport Security をバイパスして、セキュリティで保護されていない HTTP サーバーを許可する
状況:
開発用とステージング用に、これら 2 つの異なるサーバーに接続する必要があります。どちらのサーバーにも、信頼されていない SSL 証明書があります。例として、これら 2 つのサーバーの URL は次のとおりです。
ステージング サーバー:https://52.70.13.2:1010/
開発サーバー:https://example.entrydns.org:1012
API を呼び出そうとすると、次のエラーで空の応答が返されます。
または時々、
私はネットワークレイヤーにMoyaを使用しています。これは基本的にAlamofireの素敵なラッパーです。追加情報については、私が使用XCode 7.3
し、アプリは のみをサポートしています> iOS 9
。
私がしたこと:
私は、Apple が強制しようとしている App Transport Security の問題を十分に認識しています。開発のために無効にしたかったのですが、それでも無駄です。ATS をバイパスしようとしたいくつかの方法は次のとおりです。
my に以下を追加して
/li>plist
、任意のロードを許可します。ドメインの例外を明示的に定義します。
/li>
また、Alamofire マネージャー共有インスタンスのサーバー信頼ポリシーを無効にしようとしました。コード例は次のとおりです。
/li>URL を開いて、デバイスとシミュレーターに証明書をダウンロードします。
上記のすべての手順を実行しても、同じエラーが発生します。私が間違っていたことと、この問題を解決するために何ができるかを教えてください。ところで、サーバー側のソリューションを回避できれば素晴らしいことです。
前もって感謝します。
参考文献:
swift - Moya + Alamofire はすべてのリクエストを検証します
私はMoya
+を使用しており、すべてのリクエスト ( など)Alamofire
を検証しようとしていますが、 .Alamofire.request(.GET, "https://httpbin.org/get").validate()
Moya
しかし、これを行う方法が見つかりません。
swift - Cocoapod にリンクされた静的フレームワークがメイン プロジェクトに見つかりません
Carthage を介してプライベート Cocoapod プロジェクトに静的フレームワーク (Moya) を追加しようとしています。
私の目標は、Moya をプライベート Cocoapod (SwiftModel) に静的フレームワークとして含め、メイン プロジェクトでも Moya を使用することです (SwiftModel は Moya に依存しているため)。
次の手順を実行して、Moya をフレームワークに追加しました。
podspec ファイル内のリンク フレームワーク
s.vendored_frameworks = 'SwiftModel/Carthage/Build/iOS/Moya.framework'
プライベート フレームワークに Moya を追加 (ライブラリとバイナリをリンク)
したがって、Pods プロジェクト内では次のようになります。
「Framework Header Search Path」にパスを追加しようとしても、何も変更されませんでした。メインプロジェクトとポッドプロジェクトに追加しようとしました。
プライベートポッドを構築するだけで、すべてが正常に機能し、Moya が認識されます。ただし、メイン プロジェクト (プライベート ポッドを含む) をビルドする場合、常に次のエラーが発生します。
フレームワークが見つかりません アーキテクチャ arm64 の Moya
ios - Moya + RxSwift によるカスタム エラー応答処理
iOS アプリのネットワーキングに RxSwift で Moya を使用していObserver
ますonError
。
API は常に次の JSON 形式でエラー応答を返します。
目標は、次のコード スニペットのようなものを達成することです。ここで、渡されるエラーonError
は、型ではなくカスタム エラー型Moya.Error
です。
カスタムを使用してこれらのエラーを正常にインターセプトし、カスタム エラー モデルに逆シリアル化することができます(この SO の質問PluginType
から以下に貼り付けます) が、これらのモデルを最終的に.Observer
swift - Rxswift + Moya + Moya-ObjectMapper エラー処理
Rxswift でMoyaとMoya-ObjectMapperを使用して、ネットワーク リクエストを作成しています。
私のネットワークリクエストは以下です。
エラーが発生した場合、病院への依頼Observable
は終了し、二度と病院への依頼を行うことはできません。
requestHospitalButton
がタップされたときに病院のリクエストを再試行するにはどうすればよいですか?