問題タブ [sendasynchronousrequest]
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.
ios - UI を更新する前に表示される NSURLConnection sendAsynchronousRequest completionHandler ログ
json文字列をサーバーに送信するこのコードがあります
非同期リクエストは正常に終了し、終了後すぐにログが表示されます。ただし、このコード:
UI に表示されるまでに 10 秒ほどかかります。なぜこれが起こるのか知っている人はいますか?
cocoa - NSURLConnectionでSSL証明書エラーを無視する
Webサービスからデータをプルするために使用[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)]
していますが、Webサーバーに自己発行証明書があるため、次のエラーが表示されます。
次を使用して表示されたエラー:
このエラーを無視して続行する方法はありますか?
cocoa-touch - 非同期リクエストiOS 6のNSURLConnectionステータスコード
現在、NSURLConnection から sendAsynchronous を使用して post および get 要求を作成していますが、応答でステータス コードを取得できません。ほとんどの投稿では、NSURLConnection とそのデリゲート メソッドの使用が提案されていますが、これも非同期であると理解しています。
デリゲートが呼び出し元のメソッド (最終的にデータを必要とするメソッド) に情報を返す方法がわかりません。sendAsynchronous メソッドには、現在使用しているコールバックがあります。
私はこれが初めてです、あなたの助けに感謝します。
ios - 非同期の DBAccess
私が構築しているアプリには多くのテーブルがあります。最初の 15 行のデータをロードしています。ユーザーが下にスクロールすると、次の 15 行のバッチが取得されます。
「カウント」と「スキップ」を受け取る DBAccess 関数をいくつか作成しました。最初にテーブルをロードするとき、カウント = 15、スキップ = 0。ユーザーがスクロールするとき、カウント = 15、スキップ = [配列カウント];
コードは次のようなものです。
非常に遅いネットワーク接続で cellForRowAtIndexPath の範囲外の配列がクラッシュします (たとえば、空の配列を超えるインデックス 16。numberOfRowsInSection は [配列数] を返します)。
問題は次のとおりだと思います。
0) 画面に入ります。
1) 15 行をロードする
2) 下にスクロールして、別の 15 をロードします。接続が遅いため、sendAsynchronousRequest db 呼び出しからまだコールバックがありません
3) 別のビューコントローラーに移動します (つまり、画面を離れます。非同期で画面がフリーズしないため、これを行うことができます)。
4) 画面に戻ります。初期画面をロードするとskip = 0が設定されるため、変更可能な配列が初期化され、データベースにヒットします
5) 手順 2 でヒットしたデータベースが返されます。私の可変配列は、ステップ 4 からゼロに設定されました。テーブルをリロードするとき、配列が if(skip == 0)initialise から空になったときに、self.dataArray objectAtIndex:16 などを取得しようとしています。
これは正しいと思いますか?numberOfRowsInSection が [array count]; を返す場合、配列が範囲外になる他の理由はありますか? これを修正するための好ましい方法はありますか?
objective-c - NSURLConnection を sendSynchronousRequest から sendAsynchronousRequest に変更しますか?
sendSynchronousRequest を使用した NSURLConnection のコードは正常に動作しますが、非同期要求に変更するにはどうすればよいですか? 私はたくさん試しましたが、何もうまくいきませんでした。
リクエストが空の場合、 [[]] で空の配列を取得します。アラート メッセージをキャッチするにはどうすればよいですか?
助けてください ...
ios - NSURLConnection sendAsynchronousRequest がエラー シナリオで null 応答を返す
sendAsynchronousRequest メソッドを使用して非同期要求を送信すると、「無効なユーザー名」などのエラー シナリオで null 応答が返されます。API では、対応する JSON 値を使用してエラー シナリオで応答を送信しています。
JSON を受け取りますが、URL 応答は null です。
適切なデリゲート メソッドを使用して connectionWithRequest: メソッドでこれを行うと、正常に動作します。
どんな助けでも大歓迎です。
ありがとう!
ios - NSURLConnection sendAsynchronousRequest が「指定されたホスト名を持つサーバーが見つかりませんでした」という結果になる
を使用していくつかのネットワーク要求を行っています[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:completionHandler]
。
残念ながら、これらのリクエストを実行する時間の半分で、NSError
with が発生しA server with the specified hostname could not be found
ます。私もRequest timed out
時間を得ますが、それほど頻繁ではありません。
私は地下室にいるので、ネットワーク接続の問題かもしれませんが、他のアプリでは問題なくリクエストを送信できます。また、サファリで問題なく URL を読み込むことができ、速度テストも問題ないようです。
リクエストは に送信されhttp
ます。また、同時に 2 ~ 3 件のリクエストが送信される場合もあります。
私の質問:
- この動作の原因となる
sendAsynchronousRequest
デリゲート ベースのメソッドとは大きく異なることはありますか?NSURLRequest
- そうでない場合、これらのエラーを適切に処理するための推奨される方法はありますか? 制限までリクエストを再試行しようとしましたが、すべてエラーになります。再試行の間に遅延を設定することを考えましたが、違いはないようです。
iphone - sendasyncrequest は本当に役に立たないのですか?
だからある時点まで私はこれを使用しました:
しかし、そのようなアプローチがアプリをクラッシュさせるケースが常に 1 つあることに気付きました。
たとえば、低速のインターネット接続でコードを使用して、ブロックが完了するまでバックグラウンドに入ってから、もう一度アプリに戻るようにしてください。でクラッシュすることがわかりますEXC_BAD_ACCESS
では、sendasynchrequest
ブロックはそれほど価値がないのですか?または、使用中に何か不足していますか?
前もって感謝します!