問題タブ [cfstream]

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 に答える
3213 参照

objective-c - SSL ハンドシェイク用に CFStream (または NSStream) を構成する方法は?

CFStream/NSStream を使用して http 接続を確立しています。次の 3 つのケースで SSL ハンドシェイクが失敗したことを検出できるようにしたいと考えています。

  • ケース A: サーバーが信頼されていない
  • ケース B: サーバーは信頼されているが、クライアント証明書を要求する
  • ケース C: サーバーが信頼されておらず、クライアント証明書を要求する

今日、CFStream の SSL プロパティで何もしなくても、次のようになります。

  • ケース A: エラー -9807
  • ケース B: エラーは発生しないが、サーバーが接続を拒否する (エラー 500)
  • ケース C: エラー 9807

これら 3 つのケースを正しく区別するように CFStream を構成する方法はありますか? または、SSL ハンドシェイク中にいくつかのコールバックを行うには?

ご協力いただきありがとうございます。

0 投票する
0 に答える
260 参照

ios - CFSteam ベースの接続でのプロキシ認証 (iOS)

CFNetwork プログラミング ガイドに従って、CFStream ベースの接続を実装しました。認証済みプロキシ サーバーの資格情報を取得するにはどうすればよいですか? 同じネットワークで NSURLConnection が使用されたときに表示されるダイアログである、システム ダイアログによって保存された共有ユーザー名とパスワードを取得する方法はありますか。

0 投票する
3 に答える
1227 参照

c++ - ファイル ストリームであるかのように、メモリ ブロック (/ C/C++ 配列) にアクセスします。

C (または C++) でこれを行う方法はありますか?

背景情報: メモリ ブロックまたは大きなファイルを 1 行ずつ読み取り、それらの行を 1 つずつ処理します。同じことを 2 回 (メモリ ブロック用に 1 回、ファイル ストリーム用に 1 回) 書くのが面倒です。 . ファイル ストリーム バージョンを使用する必要がある場合、ファイルはメモリに収まりません。当然のことながら、メモリ ブロックをファイルに保存し、ファイル ストリームを使用して同じデータにアクセスすることもできますが、それはコンピューター時間の浪費のようです。

Linux システムの /dev/shm について知っています。言語 (C または C++) のレイヤーで同じ種類の抽象化を提供する、より移植性の高いものはありますか?

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

ios - NSStream のクローズとオープンのエラー

ネットワーク接続を介して単一の文字を送受信するために NSStream を使用しています。
を使用して、読み取りと書き込みの両方のストリームをインスタンス化しますCFStreamCreatePairWithSocketToCFHost(...)

送受信するための基本的な動作メカニズムは正常に動作しています。

NSStream今、私は何かを送受信する必要があるときだけを作成したいと考えています(通常は 2 分ごとに 1 回)。初めてストリームを作成し、パケットを送信して閉じると、すべてがうまく機能します。次に、NSStream(新しいソケットを作成し、その上でストリームを開く) を再作成しようとしましたが、開始機能が機能しません。テストに使用しているので、メソッドを使用してストリームを閉じると、サーバー上の接続が閉じていないことがnetcatわかります。[NSStream close]ソケットを強制的に閉じるにはどうすればよいですか? または、私がやろうとしていることを行うためのより良い方法はありますか?

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

macos - MacOSX: 特定のクライアントおよびサーバー ポートで CFStream/NSStream を作成する

(POSIX/winsocks) ソケットベースの TCP/IP プロトコルのクライアント側をネイティブの Mac OS X フレームワークに変換しようとしています。このプロトコルでは、指定されたポートにクライアント ポートが設定され、このソケットが別のポートでサーバーに接続されます。基本的に(エラーチェックを削除):

これらの関数を使用すると、MS Windows (または Wine) で実行されているサーバーとの有効な接続が得られます (ただし、Winsock で行うのとは多少異なる方法で ECONNREFUSED を処理する必要があるようです)。

作成したソケットを CFStreamCreatePairWithSocket に渡して、機能する NSInputStream と NSOutputStream のペアを取得することもできます。

そのペアを直接作成することは可能ですか? 今のところ、機能する NSInputStream を取得することしかできませんでした

高レベルの CFStream/NSStream フレームワークを使用して細かい制御 (クライアントとサーバーのポート指定、タイムアウト指定など) を利用できない可能性はありますか?

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

ios - パブリック IP の使用中に CFStream 接続が接続できない

私はiOSとObjective cの初心者です....私のアプリでは、CFStreamを使用してサーバーへのソケット接続を確立しています..問題は、ローカルIP(192.168.10.246)を使用してプログラムを実行すると接続が確立されていますが、それをパブリックIPに置き換えると、ビューがフリーズして次のエラーイベントが発生します..

私は現在シミュレーターで実行しています...

そして私のコードは..

パブリック IP 用のコードを追加する必要がありますか...それとも、ネットワーク接続または Xcode の設定で何らかのファイアウォールの問題ですか? 助けてください!!!!

私はwiresharkログを添付しました:私の宛先パブリックIPは221.135.139.46です....

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

ios - iOS で CFStream を使用してパブリック IP に接続する方法

私は iOS と Objective C の初心者です

サーバーに接続するために次のコードを使用しています... IP 192.168.10.246 を使用してローカルに接続している場合、コードは正常に動作し、接続されますが、代わりにパブリック IP を使用しようとすると、ビューがフリーズしてしまいます。サーバーに接続しません....

ここでレイ・ウェンダーリッヒが提供するチュートリアルを使用しています

そして私のコードは次のとおりです。