如何将数据从网页发送到Web服务器的端口?

时间:2011-07-17 01:46:25

标签: java javascript c sockets

这是将数值数据从javscript网页发送到Web服务器端口的最佳方法..我在服务器上运行服务器套接字程序并侦听端口5000。 我需要从网页发送数据到端口?哪种方法最好?

场景就是这样。

我在使用XAMPP的笔记本电脑中托管的Web服务器上运行了一个C套接字程序。 它正在侦听端口5000,我也有我的IP地址。在网页中, 我正在运行一个javascript,当用户按下任何箭头键时,我需要一个值发送到这个端口..比如up -1,down -2 etc ......

4 个答案:

答案 0 :(得分:1)

目前没有任何方法可以以便携方式执行此操作。某些浏览器支持the WebSocket standard,这会为您提供对套接字的一些限制访问权限,但目前除Chrome和Safari之外的任何常见浏览器都不提供此功能。 Flash播放器支持单独的XMLSocket协议,如果Flash插件可用,您也可以使用该协议。但是,这些协议都不支持对套接字的原始访问 - 两者都需要一些初始协商和数据包成帧。

答案 1 :(得分:0)

因为您的Web服务器运行在与套接字程序不同的端口上,所以浏览器中的Javascript由于Same Origin Policy而被限制直接向套接字程序发出请求。但是,有各种方法来解决这个限制。 Alex Sexton有lengthy overview所有不同的方法。但是,所有这些方法都要求您的套接字程序也运行http协议。

Socket.IO似乎非常适合您要做的事情,但您可能需要放弃C程序。

答案 2 :(得分:-1)

我想对服务器上的所需端口发出一个ajax请求...可以解决请求。

答案 3 :(得分:-1)

从网页打开网络套接字连接的唯一方法是使用Java或Flash应用程序进行二进制套接字连接。然后,您可以使用java脚本将数据传递给应用程序,该应用程序将连接并转发到服务器。

或者,您可以使用一些服务器端代码和AJAX代理连接并转发数据。 第二个选项不依赖于任何安装的浏览器插件,我认为更容易实现。它还可以转发到不在Web服务器本身上的端口,因为它不受浏览器安全限制。