2017-01-18 7 views
1

java nioでゲームサーバーを作成していますが、socketchannelの使用方法やC#でデータを送信する方法がわかりません。どうすればこの問題を解決できますか。ちょうどI/Oを使用しますか?C#クライアントのバッファをjava SocketChannelサーバーに送ることはできますか?

+0

これを同期して行うと仮定した場合、MSDNで同期通信にソケットを使用する方法の例があります。https://msdn.microsoft.com/en-us/library/kb5kfec7(v=vs.110) .aspx – Sidewinder94

+0

nioはストリームタイプを使用していませんが、何の問題もありません。 – ChairOfOnbi

+2

両方の言語が理解できる形式でペイロードを送信する限り、JavaがNIOとC#を別のものを使用する場合は無関係です。ポイントは:あなたはおそらくTCP経由でバイトを送信します - そうですか?したがって、あなたはバイトを送信/受信するのに好みの方法を使うことができます。あなたはまともなプロトコルを持つ必要があります。いくつかのバイトプロトコルで自分自身を考案しているか、JSON、XMLなどのいくつかの標準を使ってペイロードをシリアル化/デシリアライズすることができます。 – Fildor

答えて

0

ソケットによるオブジェクト通信には多くの制限があります。両面のデータを理解するには、ある種の通信プロトコルを定義する必要があります。シリアル化されたデータを送信して、反対側で同じ方法でデシリアライズが行われるようにすることもできます。 Webサービス(SOAPまたはRESTful)などの他のメカニズムを使用して、使いやすくする必要があります。

+1

私は異なる言語を使用してアプリケーション間のネットワーク上でデータを送信するときにwebsocket + jsonの組み合わせを使用したい。これらの両方とも主流の言語の多くでかなりうまくサポートされています – Sidewinder94

+0

@ Sidewinder94 OPは**ゲーム**サーバーと言います。したがって、技術の選択は、交換されるデータの種類に大きく依存します。 – Fildor

+0

@Fildor私は完全に同意します、それはちょうど出発点としてではなく、完全な奇跡の解決策ではありません^^、私はそれを正しく表現していないかもしれません。 – Sidewinder94

関連する問題