単一のクライアントからtcpサーバーに複数のデータストリームを送信する方法

Ronak07

サーバーサイドコード

var net = require('net');

var server = net.createServer((connection) => {
    console.log('server connected');

    connection.on('data', (data) => {
        console.log('data received');
        console.log('data is: \n' + data);
    });
});

var HOST = '127.0.0.1';
var PORT = '8000'


server.listen(PORT, HOST, function() {
    //listening
    console.log('server is listening to ' + PORT + '\n');

    server.on('connection', function(){
        console.log('connection made...\n')
    })
});

クライアントサイドコード

var client = new net.Socket()

//connect to the server
client.connect(PORT,HOST,function() {
    'Client Connected to server'

    //send a file to the server
    var fileStream = fs.createReadStream(__dirname + '/readMe.txt');
    // console.log(__dirname + '/readMe.txt');
    fileStream.on('error', function(err){
        console.log(err);
    })

    fileStream.on('open',function() {
        fileStream.pipe(client);
    });

});

//handle closed
client.on('close', function() {
    console.log('server closed connection')
});

client.on('error', function(err) {
    console.log(err);
});

クライアントとTCPサーバーを作成し、1つのクライアントからサーバーに複数のデータを送信する方法を知りたいです。

サーバーに要求して応答を返すサーバーに接続できるクライアントが複数存在する可能性があることは知っていますが、それは望ましくありません。単一のクライアントがノード内のサーバーに複数のデータストリームを送信できる可能性があることを知りたいのです。 js。

200行のチャンクデータが存在するファイルcreateReadStreamがあると仮定すると、を使用してそのファイルを読み取ることができますが、200行のデータ(例)を持つ複数のファイルがあると仮定して、これらの複数のファイルをTCP経由で送信する方法サーバ

どんな例でも理解されるでしょう。

node.jsは初めてなので、例を使って説明してください

上記の例は、1つのファイルのデータをサーバーに送信することです。クライアントが数百のファイル(または任意のデータストリーム)を送信したい場合はどうすればよいでしょうか。では、単一のメディアを介してTCPサーバーに送信するにはどうすればよいでしょうか。

題名

これは、netモジュールfsモジュール、およびforEachファイルをループするための基本的な構成を使用して可能です。

server.js

const net = require('net');
const host = "localhost";
const port = 3000;

const server = net.createServer((connection) => {
  console.log('server connected');

  connection.on('data', (data) => {
    console.log(`data received: ${data}`);
  });
});

server.listen(port, host, function () {
  console.log(`server is listening on ' + ${port}`);

  server.on('connection', function () {
    console.log('connection made...\n')
  })
});

client.js

const net = require("net");
const fs = require("fs");
const port = 3000;
const host = "localhost";

const files = [
  "file1.txt",
  "file1.txt",
  "file1.txt"
  // As many files as you want
]

const client = new net.Socket()

client.connect(port, host, function () {

  files.forEach(file => {

    const fileStream = fs.createReadStream(file);
    fileStream.on('error', function (err) {
      console.log(err);
    })

    fileStream.on('open', function () {
      fileStream.pipe(client);
    });

  });
});

client.on('close', function () {
  console.log('server closed connection')
});

client.on('error', function (err) {
  console.log(err);
});

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

TCP / IPクライアント:サーバーから複数の入力ストリームを読み取るための最良の方法

分類Dev

クライアントのhtmlからnode.jsサーバーにデータを送信する方法は?

分類Dev

Meteorのクライアントからサーバーにデータを送信する方法は?

分類Dev

Solrアナライザーのトークンストリームから複数値フィールドにデータを入力する方法は?

分類Dev

クライアントブラウザからのPOSTリクエストを受け付けているフロントエンドサーバーからバックエンドサーバー(アップロード用)にファイルを送信する方法(フォームデータ->ファイル入力)?

分類Dev

クライアントブラウザからのPOSTリクエストを受け付けているフロントエンドサーバーからバックエンドサーバー(アップロード用)にファイルを送信する方法(フォームデータ->ファイル入力)?

分類Dev

クライアントはデータをtcpサーバーに送信し、tcpサーバーはデータを別のサーバーに送信します

分類Dev

複数のクライアントを処理する単一のTCP / IPサーバー(C ++)?

分類Dev

プットリクエストの一部としてクライアントから送信されるエクスプレスを使用してサーバー側のデータにアクセスする方法

分類Dev

単一のサーブレットがクライアント側からの複数のリクエストをどのように処理するか

分類Dev

c(TCP)の単一サーバープログラムを備えた複数のクライアント

分類Dev

複数のディレクトリから単一のパンダデータフレームに複数の.parquetファイルを読み取る方法は?

分類Dev

クライアントからサーバーに大量のデータを送信する

分類Dev

ノードjsサーバーからクライアントにjsonデータを送信する方法は?

分類Dev

サーバーからクライアントに大量のデータを送信するGWTのベストプラクティス

分類Dev

Angular2:リクエスト時にクライアントからサーバーにデータを送信する方法

分類Dev

複数のクライアントの単一サーバーアプリケーションで主キー列の一意性を維持する方法

分類Dev

クライアントC#から複数のTCPサーバーに接続する

分類Dev

cでTCPを使用するマルチユーザーチャットサーバー。複数のクライアントにデータを送信する方法は?

分類Dev

Java(クライアント)からデータを受信するPython(サーバー)を別々の行で..(TCP)

分類Dev

HTTPクライアントからサーバーにデータ(文字列)を送信する方法

分類Dev

サーバーからクライアントにデータを読み取って送信する方法は?

分類Dev

複数のフォームの1つをエディターテンプレートからコントローラーアクションに送信する

分類Dev

クライアントがスリープなしで複数のバッファを送信するのに、なぜtcpサーバーが1つのバッファを受信するのですか?

分類Dev

Nodejs&Express:response.send()を介してサーバーからクライアントに複数のJson変数を送信する方法

分類Dev

データフレームからのアイテムの単一のリストを取得する方法

分類Dev

サーバーからAndroidアプリケーションにデータを送信するためのベストプラクティス

分類Dev

Spring Boot管理クライアントのメタデータを管理サーバーに送信する方法

分類Dev

単一の送信ボタンangular2を使用して複数のリアクティブフォームバリデーターを起動する方法

Related 関連記事

  1. 1

    TCP / IPクライアント:サーバーから複数の入力ストリームを読み取るための最良の方法

  2. 2

    クライアントのhtmlからnode.jsサーバーにデータを送信する方法は?

  3. 3

    Meteorのクライアントからサーバーにデータを送信する方法は?

  4. 4

    Solrアナライザーのトークンストリームから複数値フィールドにデータを入力する方法は?

  5. 5

    クライアントブラウザからのPOSTリクエストを受け付けているフロントエンドサーバーからバックエンドサーバー(アップロード用)にファイルを送信する方法(フォームデータ->ファイル入力)?

  6. 6

    クライアントブラウザからのPOSTリクエストを受け付けているフロントエンドサーバーからバックエンドサーバー(アップロード用)にファイルを送信する方法(フォームデータ->ファイル入力)?

  7. 7

    クライアントはデータをtcpサーバーに送信し、tcpサーバーはデータを別のサーバーに送信します

  8. 8

    複数のクライアントを処理する単一のTCP / IPサーバー(C ++)?

  9. 9

    プットリクエストの一部としてクライアントから送信されるエクスプレスを使用してサーバー側のデータにアクセスする方法

  10. 10

    単一のサーブレットがクライアント側からの複数のリクエストをどのように処理するか

  11. 11

    c(TCP)の単一サーバープログラムを備えた複数のクライアント

  12. 12

    複数のディレクトリから単一のパンダデータフレームに複数の.parquetファイルを読み取る方法は?

  13. 13

    クライアントからサーバーに大量のデータを送信する

  14. 14

    ノードjsサーバーからクライアントにjsonデータを送信する方法は?

  15. 15

    サーバーからクライアントに大量のデータを送信するGWTのベストプラクティス

  16. 16

    Angular2:リクエスト時にクライアントからサーバーにデータを送信する方法

  17. 17

    複数のクライアントの単一サーバーアプリケーションで主キー列の一意性を維持する方法

  18. 18

    クライアントC#から複数のTCPサーバーに接続する

  19. 19

    cでTCPを使用するマルチユーザーチャットサーバー。複数のクライアントにデータを送信する方法は?

  20. 20

    Java(クライアント)からデータを受信するPython(サーバー)を別々の行で..(TCP)

  21. 21

    HTTPクライアントからサーバーにデータ(文字列)を送信する方法

  22. 22

    サーバーからクライアントにデータを読み取って送信する方法は?

  23. 23

    複数のフォームの1つをエディターテンプレートからコントローラーアクションに送信する

  24. 24

    クライアントがスリープなしで複数のバッファを送信するのに、なぜtcpサーバーが1つのバッファを受信するのですか?

  25. 25

    Nodejs&Express:response.send()を介してサーバーからクライアントに複数のJson変数を送信する方法

  26. 26

    データフレームからのアイテムの単一のリストを取得する方法

  27. 27

    サーバーからAndroidアプリケーションにデータを送信するためのベストプラクティス

  28. 28

    Spring Boot管理クライアントのメタデータを管理サーバーに送信する方法

  29. 29

    単一の送信ボタンangular2を使用して複数のリアクティブフォームバリデーターを起動する方法

ホットタグ

アーカイブ