基于Netty实现可自动渲染HTML页面的静态Web服务器

一:前言

  • 一个灵感花了两天时间写的一个静态web服务器,实现自动渲染。
  • 该服务器适用于前端开发人员,致力前后端完全分离。
  • 相比Vue.js,本项目的特点就是站在了服务器的角度,非JS加载页面。

二:功能

  • 只需要一行配置,写明服务端JSON接口地址,即可实现自动渲染。
  • 支持自定义标签。
  • 后期想要加入语法,因项目前景不明,该功能暂未实现。
  • 我的邮箱:yster@foxmail.com

三:下载

Github:https://github.com/yueshutong/JerryServer/
码云:https://gitee.com/zyzpp/JerryServer


四:web服务器启动

1.在config可以配置启动端口,在template里有404页面,webapps里放置项目。

这里写图片描述

2. windows用户双击startup.exe启动服务器,Linux执行./startup.sh

这里写图片描述


五:使用文档

1. web项目目录

这里写图片描述

2.编辑page.json

这里写图片描述

3.带JE自定义标签的HTML

这里写图片描述

4.访问该HTML页面

这里写图片描述

5.对比服务端提供的JSON数据

这里写图片描述

要基于 Netty 实现一个 SOCKS5 服务器,可以按照以下步骤进行: 1. 创建一个 Netty 的 ServerBootstrap 对象,并设置其相关属性,例如监听端口号、处理器等。 2. 在处理器中实现 SOCKS5 协议的解析和处理。对于 SOCKS5 协议,客户端会发送一个 Greeting 消息,服务器需要回复一个 Greeting 消息确认连接。然后客户端会发送一个请求,包括请求类型、目标地址和端口等信息,服务器需要根据请求类型进行相应的处理,例如连接目标地址和端口、绑定到指定的地址和端口等。 3. 在处理器中实现数据的转发,当客户端和目标服务器建立连接后,服务器需要将数据从客户端转发给目标服务器,然后将目标服务器返回的数据转发给客户端。 下面是一个简单的示例代码: ```java public class Socks5Server { public static void main(String[] args) throws InterruptedException { EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workerGroup = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) throws Exception { ChannelPipeline pipeline = ch.pipeline(); pipeline.addLast(new Socks5ServerEncoder()); pipeline.addLast(new Socks5InitialRequestDecoder()); pipeline.addLast(new Socks5ServerHandler()); } }); ChannelFuture future = bootstrap.bind(1080).sync(); future.channel().closeFuture().sync(); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } } } ``` 在上面的代码中,创建了一个 ServerBootstrap 对象,并设置了监听端口号为 1080,处理器为 Socks5ServerHandler。Socks5ServerHandler 实现了 SOCKS5 协议的解析和处理,以及数据的转发。 需要注意的是,这只是一个简单的示例代码,实际使用中可能需要根据具体需求进行扩展和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值