問題タブ [tcpclient]
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.
c# - TcpClientとTcpListenerを使用した後の乱雑なバイト配列
TcpClientとTcpListenerを使用して、ネットワーク経由でmp3ファイルを送信したいと思います。ソケットを使用してこれの解決策を実装しましたが、いくつかの問題があったため、ファイルを送信するための新しい/より良い方法を調査しています。
次のようなバイト配列を作成します:length_of_filename | filename | file
これは、上記のクラスを使用して送信する必要がありますが、サーバー側では、読み取ったバイト配列が完全に混乱しているため、理由がわかりません。
私が送信するために使用する方法:
次に、サーバー側では次のようになります。
誰かが私が見逃している/間違っていることを見ることができますか?
c# - .net TcpClient を使用して通信することにより、NetWorkStream がいつ終了するかを判断するにはどうすればよいですか?
stream.DataAvailable を使って終了かどうかを判断しようとしていますが、値が false になることがありますが、しばらくすると再び true になります。カウンターを設定して、このように記号 '>' で終了を判断する必要があります
それに対処する良い方法はありますか?ありがとう!
c# - NetworkStream と TcpClient にはどのくらいのバッファーがありますか?
TCPServer と Client プログラムを書いています。TcpClient バッファーにはどのくらいのスペースがありますか? たとえば、どの時点でデータを破棄し始めるのでしょうか? TcpClient がブロックされている可能性があるかどうか、または (バッファーがいっぱいにならないように) 独自のバックグラウンド スレッドに入る必要があるかどうかを判断しようとしています。
c# - サーバーにブラック ホールがある (TcpClient、TcpListener)
ネットワーク経由でクライアントから送信されたファイルを受信するサーバーを構築しようとしています。クライアントが一度に 1 つのファイルを送信することにした場合、問題はありません。期待どおりにファイルを取得しますが、複数のファイルを送信しようとすると、最初のファイルしか取得しません。
サーバーコードは次のとおり です。接続されたクライアントごとに1つのスレッドを使用しています
次のコードは ClientHandler クラスの一部です
最初の反復で最初のファイルが送信されますが、その後は何も取得されません。私は運がなくても、すべての反復の最後に Thread.Sleep(1000) を使用しようとしました。
反対側には、このコードがあります(クライアント用)
メソッドのアップロード:
netStream (NetworkStream) は Connect メソッドで開かれ、Disconnect で閉じられます。
ブラックホールはどこ?やろうとしているように、複数のオブジェクトを送信できますか?
御時間ありがとうございます。
delphi - Delphi から cstring を渡す方法
c 構造体として定義された一連のメッセージを持つサーバー用に、Delphi で tcp クライアントを作成しています。以下は、メッセージの 1 つの変換例です。
タイプをグーグルで検索すると、cstring は、この状況で渡すと予想される char の標準配列とは異なることがわかりますが、cstring の内部表現を見つけることができないようです。
サーバーに渡すためにレコードで cstring をどのように表現しますか?
cocoa - FTP への Cocoa NSStream TCP 接続
私はココアは初めてですが、プログラミングは初めてです。最近、私は Mac 用の FTP クライアントを書きたいと思ったので、最初は (Windows 上で) 最も使い慣れた言語で作成し、FTP 通信の仕組みがダウンしたときに Cocoa に移行しました。
私の質問は (どうやら) 少し議論の余地があります: (ftp サーバー) への読み取り/書き込み可能な接続を確立するにはどうすればよいですか?
私がこれまでに持っているもの(明らかに機能していない):
これは部分的にhttp://developer.apple.com/mac/library/documentation/cocoa/Conceptual/Streams/Articles/NetworkStreams.htmlに基づいています 。なぜ NSStream を選んだのですか? この質問は単に FTP ストリームに接続する方法に関するものですが、私のプロジェクト全体には SSL も含まれており、ここと Google で検索できる限り、NSStream は SSL 接続に「切り替える」ことができます。
接続が行われているのを見ることができませんでしたが (通常はできます)、ストリームが開く前にストリームに書き込む必要があることについても聞いたことがありますか?
私の質問が煩わしい場合は申し訳ありません-私はCocoaが初めてです:)
c# - TcpClient BeginRead/Send スレッドは安全ですか?
関連するネットワーク ストリームでTcpClient
非同期を呼び出した場合に.NET を使用すると、別のスレッドでそのストリームを呼び出すことはできますか?BeginRead()
Write()
またはlock()
、TcpClient
からコールバックされるBeginRead
コードと、送信を行うコードを使用する必要がありますか?
また、次のように閉じるTcpClient
と:
私もそうしなければなりませんlock()
かTcpClient
?
c# - TCP 接続の作成と終了イベントのフック
OS 上のすべての TCP 接続を監視するために C# が提供するヘルパー クラス。サンプルコードもいただければ幸いです。
注: 当初の目的は Windows でこれを監視することでしたが、.Net Core を使用して他の OS でも同じことを行うとよいでしょう。
c# - ロードバランサーの背後からクライアントのIPアドレスを取得するにはどうすればよいですか?
TcpClientを使用して、ポートでリクエストをリッスンしています。リクエストがクライアントから届いたとき、リクエストを行っているクライアントのIPを知りたいです。
私はもう試した:
これらのアドレスはすべて、プライベートアドレスであり、明らかに要求を行っているネットワーク外のクライアントのアドレスではない10.xxxアドレスを出力します。リクエストを行うクライアントのパブリックIPを取得するにはどうすればよいですか?
編集: tcp転送でAmazonEC2ロードバランサーを使用しています。この設定で真のクライアントIPを取得する方法はありますか?
c# - C#でTor制御プロトコルを使用するにはどうすればよいですか?
プログラムでTor制御ポートにコマンドを送信して、チェーンを更新しようとしています。C#で例を見つけることができず、ソリューションが機能していません。リクエストがタイムアウトします。サービスを実行していますが、制御ポートでリッスンしているのを確認できます。
誰かが私が間違っていることを見つけることができますか?
編集:
ハンスの提案に続いて、彼は何らかの理由で削除しましたが、私は単に「AUTHENTICATE」ではなく「AUTHENTICATE\n」を送信しようとしました。Torからエラーが返ってきました:「551引用符で囲まれた文字列が無効です。パスワードを二重引用符で囲む必要があります。」少なくともある程度の進歩はあります。
次に、「AUTHENTICATE \ "\" \ n」を送信しようとしましたが、応答を待っている間にタイムアウトになりました。
編集:
このコマンドは、WindowsTelnetクライアントで正常に機能します。引用符を追加する必要もありません。何が悪いのか理解できません。二重引用符は、送信時に正しくエンコードされていない可能性がありますか?