【问题标题】:Processing-java sketch( server ) not responding in the way I want it toProcessing-java 草图(服务器)没有以我想要的方式响应
【发布时间】:2015-05-25 13:50:10
【问题描述】:

我创建了一个处理 Java 草图。这个草图是服务器。我想要这个程序做的就是客户端和服务器可以相互连接和编写消息(句子)。案例 1 成功了,但案例 2 没有。我已经解释了每个案例的流程以及出错/成功的地方。

案例1)在同一台计算机(Mac)上,我启动了服务器程序并在终端(Mac上的“命令提示符”)上输入telnet local host 5204,客户端(Mac)与服务器(Mac)连接。我能够在服务器和客户端之间输入句子(或字符串)并且它是成功的。因此,无论我在服务器中键入什么句子,它对客户端都是可见的,反之亦然。 注意:服务器和客户端都在同一台计算机上。

案例 2) 在 Mac 上,我启动了服务器程序。在另一台计算机上(Windows 7) 我通过命令提示符连接到服务器。连接成功。在这种情况下,字符串可以从服务器发送到客户端,并且字符串对客户端是可见的。 但是当我尝试从客户端向服务器发送字符串时,服务器只能逐个字符地接收信息,而不是整个句子/字符串。我尝试更改端口号,客户端设备,帧率,但我还是没有成功。

这是我的问题。如果我的问题更清楚或者我需要提供更多细节,请发表评论。谢谢你的回答。

下面是我的服务器代码:

import processing.net.*;

Server myServer;
//Strings from server and client
String typing = "";
String c = "";

void setup() {
  size(400, 400);
  //creating server on port 5204
  myServer = new Server(this, 5204); 
}

void draw() {
  background(255);
  //displaying server's text and client's text
  fill(0);
  text(typing, 100, 100);
  text("Client: " + c, 100, 150);
  Client client = myServer.available();

  if(client != null) {
      //reading input from client
      c = client.readString();
      c.trim();
  }
}

void keyPressed() {
  //Server can type sentences to client
  if(key == '\n') {
    myServer.write(typing + '\n');
    typing = "";
  }else{
    typing = typing + key;
  }
}

【问题讨论】:

    标签: input client server processing


    【解决方案1】:

    您尝试过ncat for Windows 吗?

    有了它你可以试试:echo Text to send & echo. | ncat localhost 5204

    Source

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-08
      • 1970-01-01
      • 1970-01-01
      • 2014-06-04
      • 2011-08-22
      • 2017-01-09
      • 2017-01-04
      相关资源
      最近更新 更多