none
请问:服务器如何解读客户端通过WebSocket协议传过来的Byte数据,以及如何通过广域网(Internet网)访问局域网中的服务器 RRS feed

  • 问题

  • 请问?我的服务器能接收到客户端通过WebSocket协议传过来的Byte数据,但无法将Byte数据转化为正确显示的文字,与书上说的相差十万八千里。可提点一二吗?另一个问题是,我电脑上有个服务器,但无法通过广域网访问,只有同在一个路由器中的设备才能通过广域网IP访问服务器,不然通过ping也不能访问服务器上网的IP。
    2016年11月1日 4:00

全部回复

  • 你好,

    请问?我的服务器能接收到客户端通过WebSocket协议传过来的Byte数据,但无法将Byte数据转化为正确显示的文字,与书上说的相差十万八千里。可提点一二吗?

    我建议你检查一下相关的字符编码设置。

    另一个问题是,我电脑上有个服务器,但无法通过广域网访问,只有同在一个路由器中的设备才能通过广域网IP访问服务器,不然通过ping也不能访问服务器上网的IP。

    想要让你的服务器能够被公共访问,你需要检查以下配置:

    1. 你的机器的IP地址是否是一个公共网络的IP地址(可以被公共网站ping成功的地址)

    2. 你的服务器上的网站是否绑定了该公共IP地址

    3. 网站绑定的端口号有没有被防火墙屏蔽

    4. 如果你是使用域名来访问你的网站,你是否在DNS服务器上配置你的域名信息

    2016年11月2日 1:55
    版主
  • 谢谢!我相信服务器上的网站是绑定了我上网电脑的公共IP,否则在同一个路由器上的设备就不能通过该公共IP访问服务器了;网站端口号是Web服务器的通用端口80,不会被防火墙屏蔽;路由器中有个注册动态域名的功能,但要每年收费五百元,更大的问题是即使付费也不能保证能用,因为直接ping该IP,数据丢失100%,接受为0。有可能该公共IP的网关防火墙阻止了ping功能,如是想让我的服务器上网只是中国梦!。
    2016年11月3日 11:56
  • 你好,

    因为直接ping该IP,数据丢失100%,接受为0。

    看起来是你的网络设置的问题,这方面的问题你需要联系相关的网络配置人员来解决。

    2016年11月4日 8:54
    版主
  • 天大的难事都可能不算难,尤其要我去联系相关人员那是绝对不可能任务。另外有个问题是,我每次都发送相同内容,但每次接受到的比特数据都不同,会不会有可能不同比特数据也有可能代表相同的字符?
    2016年11月4日 9:54
  • 你好,

    这是有可能的,因为字符编码的不同会导致同样的字符占用不同的比特数据。

    例如ASII 编码中一个字符占用1byte,但是在UTF16中一个字符会占用2bytes,在UTF32中一个字符会占用4bytes。

    2016年11月10日 1:39
    版主
  • 编码不同的确可能造成错误显示,但我是在完全相同的条件下发送相同内容,每次得到的比特数据都不同。另外请问以100.92开头的IP地址是私网地址吗?网络管理员是这样说的,就不能ping这类地址。但我在证券公司官网下载炒股软件时,变成是从100.92.0.1下载,且防毒软件提示该地址下载有风险,有恶意软件和病毒,问题是,既是私网地址为什麽能被防毒软件查获?现在windows更新也变得很艰难,都一天一夜了,数据并不大的更新一点都没完成,原来网络上唯一靠的住的就是windows更新。
    • 已编辑 yzhifa 2016年12月4日 2:50
    2016年12月4日 2:46
  • 谢谢。问题已解决。我出现的问题都与我使用的语言有关。但现在的问题是,在本机客户端能与服务正常通信,局域网上的另一台计算机就无法与服务器连接,提示WebSocket无法与服务器建立连接。
    2017年4月8日 8:53
  • 局域网中相互访问应该保证在同一个IP地址段

    外网访问需要绑定固定IP或是用花生壳,PUB云等做一个动态IP也可,同时需要在路由器中开放端口


    专注于.NET ERP/CRM开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    2017年4月10日 0:28
  • 等一下试试。但我局域网上的两台计算机,我发现win7可以用ping查找到,win10就无法查找,在win10ping127.0.0.1又能得到回应。如windosws防火墙设置了禁止ping请求,不知怎样取消 。
    • 已编辑 yzhifa 2017年4月11日 1:11
    2017年4月11日 1:00