webgeekman
V2EX  ›  问与答

Java如何监听TCP请求,并将请求转为Http发送,将返回结果再以TCP协议返回请求方?

  •  
  •   webgeekman · Jan 3, 2012 · 12402 views
    This topic created in 5293 days ago, the information mentioned may be changed or developed.
    最近一个项目需要将Tcp、http请求进行转换,之前没有任何相关经验,所以根本不知道拿什么关键字搜索能够找到有效的技术资料。
    各位能够提供一些查询关键字或者相关资料的建议就可以。我回头自己研究。当然有这方面的经验者若能不吝赐教的话,当然更是加倍感激了!!

    我之前只有web开发的经验,所以遇到TCP请求的问题,连如何使用java进行监听、tcp请求如何发送能够让接收方捕获都不清楚。
    6 replies    1970-01-01 08:00:00 +08:00
    9hills
        1
    9hills  
       Jan 3, 2012
    Google "java socket"
    daqing
        2
    daqing  
       Jan 3, 2012
    看一下Apache MINA吧。
    notedit
        3
    notedit  
       Jan 3, 2012
    基本的socket操作会吧 ?

    创建一个监听socket, 处理tcp请求, 读取tcp请求的内容,解析内容。 然后java 有一个HttpClient包,然后创建一个HTTPClient进行http 的请求,取得内容后,再传给那个tcp 请求。
    webgeekman
        4
    webgeekman  
    OP
       Jan 4, 2012
    @notedit 非常感谢!马上明白怎么回事了。
    再问个问题:基于web框架监听socket请求能实现吗?是不是最好做成jar文件执行比较好?
    notedit
        5
    notedit  
       Jan 4, 2012
    @webgeekman web框架一般都是来处理http请求的 你可以google “java network lib” 找一些tcp 的处理框架。 已经两三年没写过java代码了 java有哪些tcp 的框架也不太清楚
    kafka0102
        6
    kafka0102  
       Jan 4, 2012
    @webgeekman 我自己写了一个http加密代理程序 https://github.com/kafka0102/xhttpproxy 可能和你的需求有些像,可以参考下。它接收特定格式的tcp或http(依赖选择使用的avro传输协议)请求(传输内容经过了加密),解析出来后通过httpclient请求http页面,然后将结果加密后返回给客户端。这个东西就是放在国外的vps上的,解决墙的问题。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3692 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 04:40 · PVG 12:40 · LAX 21:40 · JFK 00:40
    ♥ Do have faith in what you're doing.