問題タブ [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.

0 投票する
1 に答える
942 参照

ios - UI を更新する前に表示される NSURLConnection sendAsynchronousRequest completionHandler ログ

json文字列をサーバーに送信するこのコードがあります

非同期リクエストは正常に終了し、終了後すぐにログが表示されます。ただし、このコード:

UI に表示されるまでに 10 秒ほどかかります。なぜこれが起こるのか知っている人はいますか?

0 投票する
2 に答える
5711 参照

cocoa - NSURLConnectionでSSL証明書エラーを無視する

Webサービスからデータをプルするために使用[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)]していますが、Webサーバーに自己発行証明書があるため、次のエラーが表示されます。

SSLエラー

次を使用して表示されたエラー:

このエラーを無視して続行する方法はありますか?

0 投票する
2 に答える
3109 参照

cocoa-touch - 非同期リクエストiOS 6のNSURLConnectionステータスコード

現在、NSURLConnection から sendAsynchronous を使用して post および get 要求を作成していますが、応答でステータス コードを取得できません。ほとんどの投稿では、NSURLConnection とそのデリゲート メソッドの使用が提案されていますが、これも非同期であると理解しています。

デリゲートが呼び出し元のメソッド (最終的にデータを必要とするメソッド) に情報を返す方法がわかりません。sendAsynchronous メソッドには、現在使用しているコールバックがあります。

私はこれが初めてです、あなたの助けに感謝します。

0 投票する
1 に答える
207 参照

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]; を返す場合、配列が範囲外になる他の理由はありますか? これを修正するための好ましい方法はありますか?

0 投票する
1 に答える
1701 参照

objective-c - NSURLConnection を sendSynchronousRequest から sendAsynchronousRequest に変更しますか?

sendSynchronousRequest を使用した NSURLConnection のコードは正常に動作しますが、非同期要求に変更するにはどうすればよいですか? 私はたくさん試しましたが、何もうまくいきませんでした。

リクエストが空の場合、 [[]] で空の配列を取得します。アラート メッセージをキャッチするにはどうすればよいですか?

助けてください ...

0 投票する
1 に答える
570 参照

ios - NSURLConnection sendAsynchronousRequest がエラー シナリオで null 応答を返す

sendAsynchronousRequest メソッドを使用して非同期要求を送信すると、「無効なユーザー名」などのエラー シナリオで null 応答が返されます。API では、対応する JSON 値を使用してエラー シナリオで応答を送信しています。

JSON を受け取りますが、URL 応答は null です。

適切なデリゲート メソッドを使用して connectionWithRequest: メソッドでこれを行うと、正常に動作します。

どんな助けでも大歓迎です。

ありがとう!

0 投票する
1 に答える
1673 参照

ios - NSURLConnection sendAsynchronousRequest が「指定されたホスト名を持つサーバーが見つかりませんでした」という結果になる

を使用していくつかのネットワーク要求を行っています[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:completionHandler]

残念ながら、これらのリクエストを実行する時間の半分で、NSErrorwith が発生しA server with the specified hostname could not be foundます。私もRequest timed out時間を得ますが、それほど頻繁ではありません。

私は地下室にいるので、ネットワーク接続の問題かもしれませんが、他のアプリでは問題なくリクエストを送信できます。また、サファリで問題なく URL を読み込むことができ、速度テストも問題ないようです。

リクエストは に送信されhttpます。また、同時に 2 ~ 3 件のリクエストが送信される場合もあります。

私の質問:

  • この動作の原因となるsendAsynchronousRequestデリゲート ベースのメソッドとは大きく異なることはありますか?NSURLRequest
  • そうでない場合、これらのエラーを適切に処理するための推奨される方法はありますか? 制限までリクエストを再試行しようとしましたが、すべてエラーになります。再試行の間に遅延を設定することを考えましたが、違いはないようです。
0 投票する
0 に答える
68 参照

iphone - sendasyncrequest は本当に役に立たないのですか?

だからある時点まで私はこれを使用しました:

しかし、そのようなアプローチがアプリをクラッシュさせるケースが常に 1 つあることに気付きました。

たとえば、低速のインターネット接続でコードを使用して、ブロックが完了するまでバックグラウンドに入ってから、もう一度アプリに戻るようにしてください。でクラッシュすることがわかりますEXC_BAD_ACCESS

では、sendasynchrequestブロックはそれほど価値がないのですか?または、使用中に何か不足していますか?

前もって感謝します!