WebSocket如何跟一般的java Socket进行通信 50C

我用一般的java Socket写了一个Swing桌面程序,可以实现两个桌面客户端的通讯。现在想把客户端用网页的形式展现,js里就需要用到WebSocket,但是在跟之前写的服务器端Socket握手后就报错:WebSocket connection to 'ws://localhost:6789/' failed: Error during WebSocket handshake: Invalid status line
请问如何实现WebSocket和桌面Socket的通信?
必须用javaWeb里的东西么?
谢谢

0

3个回答

需要你的服务器端再实现实现web socket,
http://blog.csdn.net/jiangcs520/article/details/9749867

0

网页最好还是用http吧,一般都是这样的,个人不太推荐网页里用websorketa

0
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Socket 和 WebSocket 如何通信?
本人在做在线聊天系统,多服务器,多客户端,多客服端。计划客户端用WebSocket,客服端用Socket(因为有好多功能需要WinForm 实现比如:截图)。rn客户端和客服端怎么通信呢?WebSocket服务端用Socket 和客服端的Socket服务器通信,然后Socket服务器推送给客服端么?rn也就是Socket 和 WebSocket 如何通信?多谢!
Java Socket 通信 (一)
前言:以前就学习过关于Socket编程的知识,那时候觉得还挺容易,能够实现服务器和客户端的聊天。后来,渐渐的就忘记了。由于现在在一家金融公司,公司项目必须使用到Socket,而我对Socket已模糊不清了,今天可以说是温故而知新吧。 Socket ----套接字 是网络应用程序编程的接口和一种机制 用套接字中的相关函数来建立链接和完成通信 Socket可以看成在两个程序进行通讯连接中的一个
Java使用Socket进行通信
文章目录1.使用ServerSocket创建TCP服务器端2.使用Socket进行通信3.demo展示 1.使用ServerSocket创建TCP服务器端   使用tcp通信的两个通信实体之间没有服务器端、客户端之分。java中能接收其他通信实体连接请求的类是ServerSocket,通过ServerSocket对象可以监听来自其他实体的socket连接,若没有连接,则ServerSocket对象...
java 使用Socket进行通信
本文实现一个服务端多个客户端,服务端可以向客户端群发消息,客户端向服务端可以发消息。
Java利用Socket进行通信
上学期学校开设了创新项目的课程,而我迷迷糊糊的选择了《基于手机定位的Android考勤系统》,在整个开发过程中,总的来说,真的是学到了很多,尤其是客户端和服务器端通信这一块。对Socket通信,多线程等有了一定的认识,所以在此记录一下,一起学习,我的认识还是很浅的,如有错误,欢迎指出。...
websocket与socket的区别一
什么是websocket? WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。Websocket为服务器和浏览器提供了双工异步通信功能,即浏览器可以向服务端发送信息,服务端也可以向浏览器发送信息,websocket对浏览器的支持:eg IE10+、Chrome13+、Firefox6+,实际上Websocket是通过一个socket来实现双工异步通信能力的。...
dcloud---利用websocket进行通信
dcloud---利用websocket进行通信    1.开发中通常会用到双向通信,即有些时候需要服务器主动推动消息给客户端,显然TCP不可能做到,因此在这里我顺带提一下 websocket。   2.有些时候,开发中,要用到轮训,轮训,说白了,就是要保证某东西一直开着,在达到某个条件的时候,做出某种动作,最简单的定时器机制,就能做到,举个例子,比如手机扫描二维码登录系统,你就可以再二维...
使用Socket进行通信
TCP协议被称为一种端到端的协议。这是因为它为两台计算机的连接起到了重要作用:当一台计算机需要与另一台计算机进行接连时,TCP协议会他们之间建立一个连接:用于发送和接收数据的虚拟链路。
一般的java登录
servlet和html实现登录 用到cookie和Session
websocket java 通信如何实现,初学者求助
下载了一个websocket java的class包,不知道里面函数,也不知道如何使用啊。求帮助
C++和JAVA之间socket进行通信的问题
服务端是C++,我的客户端是JAVA,如何捕获由于网络原因等而产生的连接中断的异常,我用一个rnDataInputStream in = new DataInputStream(socket.getInputStream());rnin.read();rn这种方法为什么捕捉不到这个异常,而如果服务端是JAVA的则可以捕捉到。rn请高手指教下!!!
java 利用Socket 在服务器端和客户端进行通信
服务器端import java.io.*;import java.net.*;public class Server{   public static void main(String args[]){      ServerSocket server=null;     Socket you=null;   DataInputStream in=null;   DataOutputStream ...
使用SOCKET的通信程序如何进行单元测试?
小弟目前正在开发一套基于.Net下异步通信的C#程序,公司要求能够通过NUnit进行该系统的单元测试,但是在实际情况下,由于数据通讯过程中的各个步骤基本上是一个完整的流程,包括SOCKET建立,发送,停止,关闭等,再加上异步通信模式下的各个处理类,一大堆类共同配合才能完成一个完整的功能,各个类都要以其他类的共同工作为前提,所以我想知道,各位大侠对类似的问题是怎样进行处理的?有什么好的测试方法或者思路么?不胜感激。
PHP中如何使用socket进行通信?
1. socket 概述 socket 也称作套接字,用于描述 IP 地址和端口,是一个通信链的句柄,可以用来实现不同计算机之间的通信。socket 是对 TCP / IP 协议的封装,它只是提供了一组针对 TCP 或者 UDP 进行编程的接口(API)。 socket 利用客户端 / 服务器端的模式巧妙地解决了进程之间建立通信连接的问题。 2. socket 的工作原理 服务器端
java socket 和 c socket 通信
java 为客户端rnc 为服务端rnrnrnjava 客户端代码rn[code=Java]rnpublic class Clientrnrn rn public static void main(String args[])rn rn tryrn rn Socket s = new Socket("172.10.10.88", 3228);rn s.getOutputStream().write("abc".getBytes());rn // 用于获取服务端传输来的信息rn BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));rn // 发送客户端准备传输的信息rn PrintWriter pw = new PrintWriter(s.getOutputStream(), true);rn String inStr = null;rn while (true)rn rn tryrn rn inStr = br.readLine();rn if ("exit".equals(inStr))rn rn pw.close();rn br.close();rn break;rn rn else if (null != inStr)rn rn System.out.println(inStr);rn rn rn catch (Exception e)rn rn pw = null;rn br = null;rn throw new RuntimeException(e);rn rn rn s.close();rn rn rn catch (Exception e)rn rn e.printStackTrace();rn rn rnrn[/code]rnrnrnc 服务端代码rn[code=C/C++]rn#include rn#include rn#include rn#include rn#include rnrn#define PORT 3228rnint main(void)rnrnrn int server_sockfd;rn printf("创建socket\n");rn server_sockfd = socket(AF_INET, SOCK_STREAM, 0);rn if (server_sockfd == -1)rn rn printf("socket create failed!");rn exit(1);rn rn struct sockaddr_in server;rn server.sin_family = AF_INET;rn server.sin_port = htons(PORT);rn server.sin_addr.s_addr = INADDR_ANY;rn printf("绑定socket\n");rn bzero(&(server.sin_zero), 8);rn int b;rn b = bind(server_sockfd, (struct sockaddr *) &server, sizeof(struct sockaddr));rn if (b == -1)rn rn printf("bind error");rn exit(1);rn rn int l;rn printf("监听socket\n");rn l = listen(server_sockfd, 10);rn if (l == -1)rn rn printf("listen error");rn exit(1);rn rn while (1)rn rn int client_sockfd;rn struct sockaddr_in client;rn int sasize = sizeof(struct sockaddr);rn printf("开始阻塞socket\n");rn client_sockfd = accept(server_sockfd, (struct sockaddr *) &client, &sasize);rn if (client_sockfd == -1)rn rn printf("accept error");rn continue;rn rn if (fork() > 0)rn rn printf("success\n");rn //printf("Received a connection from %s\n", (char *) inet_ntoa(client.sin_addr));rn char * ch;rn recv(client_sockfd, ch, 100, 0);rn printf("%s\n", ch);rnrn char * exit = "exit";rn send(client_sockfd, exit, strlen(exit), 0);rn rn rn return 0;rnrn[/code]rnrn他们能链接上,好像传输流有问题 过不去也回不来。。rnrnrnrn谢谢大侠们细心相助,,小弟刚学c语言不久。
java 做小票打印跟一般的打印相同吗?
java 做小票打印跟一般的打印相同吗?
Java如何与C进行通信
最近手头上在做的一个项目涉及到分布式,要与底层硬件设备进行数据交互,底层设备由厂家提供API,但都时C或C++写的,而这个项目采用JAVA,现在不直到如何去调用C或C++的,或时.dll文件的。rn希望有知道的尽快回复我,感激不尽!
delphi和java如何进行通信?
我是java的初学者,有个问题想请教诸位,把一个delphi做的程序想改成bs结构的网络版rn可以实现吗?怎么实现?那么delphi程序有没有可能给它封装成对象,然后用java进行调用?jbuilder有这个功能吗,应该怎么实现,多谢!!rn
JAVA中的 SOCKET能否与DELPHI中的 SOCKET进行通信
怎样实现
使用Socket进行通信的javademo
代码在JDK1.7一上的环境下可以调用,因为使用了ARM模块关闭资源 1.服务端 public static void main(String[] args) throws IOException { //创建socket服务器 绑定的端口号是5048 try ( ServerSocket server=new ServerSocket(5048); ...
Android客户端利用Socket进行通信
上一篇介绍了java服务器端的相关操作。这一篇主要向大家介绍Android客户端的相关实现步骤。 基本步骤: 用服务器端的IP地址和端口号实例化Socket对象。 调用connect方法,连接到服务器上。 将要发送到服务器的IO流填充到IO对象中,比如DataInputStream,DataOutputStrwam。 调用Socket提供的getInputStream和getOutput...
消息队列可不可以和socket进行通信
消息队列可不可以和socket进行通信?如果可以,那又如何通信?希望大家不吝赐教,先谢谢了
SOCKET 和IE 进行通信的问题
最近无聊 想写个简单的代理 ,,但是发现 我用SOCEKT写的程序 发送给IE 的最后数据 有问题rn有人知道 这方面的东西木得 求解 求思想 不求代码,,我发现我进入了一个死结
Android使用Socket进行通信
Java能接受其他通信实体连接请求的类是ServerSocket,ServerSocket对象用于监听客户端的Socket连接,如果没有连接,它将一直处于等待状态。public class SimpleServer { public static void main(String[] args) { //创建ServerSocket,用于监听客户端Socket的连接请求
使用Socket进行简单的通信
使用Socket进行简使用Socket进行简单的通信 单的通信 使用Socket进行简单的通信
安卓 使用socket进行通信
Socket服务器端的开发,代码如下package wyf.wpf;import java.io.DataOutputStream; import java.net.ServerSocket; import java.net.Socket; import java.util.Date; public class Server { public static void main(String
Springboot下使用WebSocket和浏览器进行长连接通信
Springboot下使用WebSocket和浏览器进行长连接通信
java socket 通信
基于java网络通信桌面服务端程序,以16进制形式接收客户端程序,并将数据保存于数据库
java通信Socket问题...
[img=http://pic.yupoo.com/joelin/814975461505/cehe0i4i.jpg][/img]rn实在是迫于无奈了...rn在网上转了几天,看了N本书...rn依然无法解决...rn呃,先说一下,这个是一个SOCKET通讯的小东西.是为这学期的结业考试做准备的...需要的功能就是在文本框里填入IP,然后在另一个文本框里输入文字,点发送后别外一个和这个一样的窗口可以正常接收显示,并且可以向这个窗口发送信息...rnrn如果有哪位高手发发善心,帮我解决下这个问题小弟在此感激不尽了...rn我们N多人等着您的到来...rn别外就是想问下,监听端口时为什么CPU会占到100%? 是不是因为一直在监听...rn望高手解答,浪费您一点时间,成就世界的未来...
java socket 简单通信
模拟socket通信,创建两个java类 ServerDemo `package com.example; import java.io.IOException; import java.io.InputStream; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket;/**
JAVA delphi socket 通信
主要是中文怎么处理rnrndelphi做服务端,具体的解析代码为:rn[code=Delphi(Pascal)]rnvar buf 保存的是接收到的byte数据rnrnfunction DecodeUTF8(var buf:array of Byte;StartPosition,Len:Integer):string;rnvarrn i:Integer;rn m:String;rnbeginrn m:='';rn FOR i:=0 TO len-1 DOrn m:=m+chr(buf[i+StartPosition+1]);rn Result:=UTF8Decode(m);rnend;rn rnfunction Utf8Decode(const S: UTF8String): WideString;rnvarrn L: Integer;rn Temp: WideString;rnbeginrn Result := '';rn if S = '' then Exit;rn SetLength(Temp, Length(S));rnrn L := Utf8ToUnicode(PWideChar(Temp), Length(Temp)+1, PChar(S), Length(S));rn if L > 0 thenrn SetLength(Temp, L-1)rn elsern Temp := '';rn Result := Temp;rnend; rnrn[/code]rnrnJAVA做客户端怎么发过去才能让它解析出正常的中文呢rnSocket socket = new Socket(server, port);rnrnString message = "中文";rnrn//怎么发送
java通信&套接字Socket
java语言socket通信 socket客户端与服务端卡死 验证socket信息发送的成功与否
Java Socket 通信 (四)
前言:经过前三次的学习,今天又深入了一步。前几次,为了方便,我读流和写流都是用的readUTF()和writeUTF().直接写的String类型。用json字符串中的字段来判断是哪个接口,这始终有点不妥。所以得加一个命令号(cmd)来让服务器判断是哪一个接口,那加在json字符串中吗?貌似也不妥。那就在传json前,先把cmd传过去,再传json。
Java Socket 通信 (二)
前言:我组长看了我的上一篇博客 Java Socket 通信 (一)他说,“你写的这个相当于http请求。 http请求的过程就是客户端申请建立tcp连接 连接成功后客户端发送报文到服务器,服务器处理完成以后把结果返回给客户端,然后断掉连接。 我们目前使用的场景是tcp长连接,客户端可以随时发送请求,服务器也可以随便写过来推送,你尝试着在改一下代码,变成在同一个连接的上可以发送多次请求。”
JAVA Socket 通信问题
鼓捣了一天,一直有几个错误弄不对,只好来请教~!!!!!rnrnrnrn服务器rnrnimport java.io.*;rnimport java.net.*;rnrnrnpublic class MsgReceiver rnrn static int receiverPort = 6666;rn static ServerSocket welcomeSocket = null;rn static Socket receiverSocket = null;rn static ObjectInputStream inFromSender = null;rn private BufferedReader getReader;rn private PrintWriter getWriter;rnrnrnrn public static void main(String[] args) rnrn if ( args.length == 1 )rn receiverPort = Integer.parseInt(args[0]);rn else rn printHelp();rn return;rn rnrnrn try rn // wait for a connection request from MsgSenderrn welcomeSocket = new ServerSocket(receiverPort); //server socket readyrn System.out.println("Server ready!");rn receiverSocket = welcomeSocket.accept();rn rnrn catch (IOException e) rn // TODO Auto-generated catch blockrn System.out.println("Receiver: Server Socket Exception");rn e.printStackTrace();rn rnrnrn try rn receiverSocket=welcomeSocket.accept();rn System.out.println("New connection accepted!");rn // stream readyrnrn rn catch (IOException e) rn e.printStackTrace();rn rnrnrnrn while (true) rnrn try rn BufferedReader br = new getReader(receiverSocket);// read from the socket streamrn PrintWriter pw=getWriter(receiverSocket);// and print to the consolernrn rn catch (IOException e) rn //e.printStackTrace();rn rn catch (ClassNotFoundException e) rn e.printStackTrace();rn rnrn rnrnrn rnrnrn private static void printHelp() rn System.err.println("MsgReceiver ");rn System.err.println("where is the port number at which MsgReceiver is listening");rn rnrnrnrnrn客户端rnrnrnimport java.io.*;rnimport java.net.*;rnrnpublic class MsgSender rnrn static String receiverHost = "127.0.0.1";rn static InetAddress receiverIP;rn static int receiverPort = 0;rnrn static ObjectOutputStream outToReceiver;rn static Socket senderSocket;rnrn public static void main(String[] args) rnrn if( args.length == 2 ) rn receiverHost = args[0];rn receiverPort = Integer.parseInt(args[1]);rn rn else if ( args.length == 1 )rn // MsgReceiver is at 'localhost'rn receiverPort = Integer.parseInt(args[0]);rn else rn printHelp();rn return;rn rnrn try rn System.out.println("Try to Connect to 127.0.0.1:6666");rn senderSocket = new Socket("127.0.0.1",6666); // Get the IPaddress of Receiver Hostrn System.out.println(" The server connected!");rnrn rn catch (UnknownHostException uhe) rn System.err.println("unknown host: " + receiverHost);rn return;rn rnrnrn // connect a socket to the receiverrn BufferedReader in;rn PrintWriter out;rn try rn in = new BufferedReader(new InputStreamReader(senderSocket.getInputStream()));rn out = new PrintWriter(senderSocket.getOutputStream(), true);rnrn catch (ConnectException e) rn e.printStackTrace();rn catch (IOException e) rn e.printStackTrace();rn rnrnrn // set up a socket stream and keyin streamrnrn BufferedReader inFromUser ;rnrn try rn BufferedReader line = new BufferedReader(new InputStreamReader(System.in));rnrn catch (UnknownHostException e) rn e.printStackTrace();rn catch (IOException e) rn e.printStackTrace();rn //clientSocket.close();rn out.close();rn in.close();rn senderSocket.close();rn rn while (true) rnrn try rnrn //out.println(inFromUser.readLine());//向服务端传送信息rn OutputStream netOut = senderSocket.getOutputStream();rn DataOutputStream doc = new DataOutputStream(netOut);rn // and then send to the socket streamrn catch (UnknownHostException e) rn //e.printStackTrace();rn catch (IOException e) rn //e.printStackTrace();rn break;rn rn rn rnrnrn private static void printHelp() rn System.err.println("MsgSender [] ");rn System.err.println("where is the port number at which MsgReceiver is listening");rn System.err.println(" is the host name or IP address where MsgReceiver is running(default: localhost) ");rn rnrn
socket Java 通信
Java的socket通信,可异步通信,客户端和服务端的代码都有
Java Socket 通信 (五)
在写了简单的socket通信之后,该开始封装了!废话少说,跟着思路走: 一、根据前几次的博客内容,我发现,客户端和服务器读和写的数据可以封装起来,统一叫做Packet。这样服务器和客户端通信就有了“规矩”,客户端不再是随随便便的来一个未知的字符串,让服务器懵逼很久。有了统一的格式,约定俗成,通信就方便快捷多了!
Java Socket 通信
使用JavaSocket技术开发通信,服务端和客户端分别进行书写进行通信,使用Socket技术 资源整理,内涵一致,如有雷同纯属巧合
Socket(JAVA)通信
最近学到了Socket通信,其实在学校的课程--计算机网络,这个东西是必学的。。。只是自己上课没听,只为应付考试,这个也没怎么碰触。接触到这个,现在就讲一下最简单的聊天通信C/S模式的代码的编写。 这里只谈一下最简单的C/S模式的聊天程序。 显然分为客户端和服务器端。 流程也很简单。服务端首先需要监听摸一个端口号。(由于1024以内的端口计算机通常内部程序在使用,所以我们最好...
java socket 通信程序
Java远程消息传送器<br><br>功能要求:<br><br>桌面窗口应用程序;<br><br>包括多个发送端和一个接收端;<br><br>多用户使用发送端通过网络连接接收端;<br><br>用户输入文字消息,然后发送给接收端,接收端将消息记录在文件中,并通知发送端记录成功;<br><br>接收端和发送端都需要记录文件,内容包括时间,内容,发送人;<br><br>接收端能够显示当前在线接收端信息,包括人员,IP,连接启动时间,持续时间;<br><br>日志文件可以在窗口中显示。<br><br> <br><br>技术要点:<br><br>Socket/TCP/IO/Thread/AWT/SWING<br>开发环境:idea