【服务器】springboot实现HTTP服务监听

简介: 【服务器】springboot实现HTTP服务监听

转载自cpolar内网穿透的文章:Springboot服务端接口公网远程调试,并实现HTTP服务监听


前言


前后端分离项目中,在调用接口调试时候,我们可以通过cpolar内网穿透将本地服务端接口模拟公共网络环境远程调用调试,本次教程我们以Java服务端接口为例。


1. 本地环境搭建


1.1 环境参数


  • JDK1.8
  • IDEA
  • SpringBoot
  • Maven
  • Tomcat9.0
  • Postman


1.2 搭建springboot服务项目

搭建一个springboot服务的项目,编写一个接口,为了更好直观看到,这里创建一个pos请求的接口

@RestController
@RequestMapping("/test")
public class InterfaceTest {
    /**
     * 测试接口
     * @param data
     * @return Map<String,String>
     */
    @PostMapping("/interTest")
    public Map<String,String>interTest(@RequestBody Map<String,String> data){
        System.out.println(data);
        if (data.size()>0){
            return  data;
        }
        data.put("code","404");
        return data;
    }
}



2. 内网穿透


这里我们使用cpolar来进行内网穿透,支持http/https/tcp协议,不限制流量,无需公网IP,也不用设置路由器,使用简单。


2.1 安装配置cpolar内网穿透


cpolar官网:https://www.cpolar.com/

2.1.1 windows系统


进入cpolar官网后,下载windows版本版本,双击安装包一路默认安装即可。


2.1.2 linux系统


  • cpolar 安装(国内使用)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash


  • 或 cpolar短链接安装方式:(国外使用)
curl -sL https://git.io/cpolar | sudo bash
  • 查看版本号,有正常显示版本号即为安装成功
cpolar version
  • token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx


21bdb135d4e0186871c7f22992d1e8f1.png

  • 简单穿透测试
cpolar http 8080
  • 向系统添加服务
sudo systemctl enable cpolar


  • 启动cpolar服务
sudo systemctl start cpolar


  • 查看服务状态

04eec9117d4ad12d7cd91e7710f13088.png


2.2 创建隧道映射本地端口


cpolar安装成功后,在浏览器上访问本地9200端口【http://localhost:9200】,使用cpolar账号登录。


860047544969ee14237e3d57a94c5d43.png

点击左侧仪表盘的隧道管理——创建隧道,创建一个tomcat的8080端口 http隧道

隧道名称:可自定义命名,注意不要与已有的隧道名称重复

协议:选择http

本地地址:8080

域名类型:免费选择随机域名

地区:选择China vip

点击创建


c60b2b08aac03aea044423f59c667d4c.png


隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网地址,然后复制地址


9e707912c431500158293790e84b5856.png


2.3 测试公网地址


这里以Postman接口调试工具向接口发送请求,在postman创建一个post请求方式.输入复制的公网地址加上接口路径,参数使用JSON格式,设置好参数点击


20650ddaa502f5ed825d8b37b1ce1011.png


在服务接口端debug调试接口,查看请求是否进入接口,进入接口表示调用成功


c760f052912c27fc80d2d23991d65b64.png


3. 固定公网地址


由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化


注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】


3.1 保留一个二级子域名


登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称


08001e24e374cebf307036e2c4e6bddf.png


3.2 配置二级子域名


访问http://127.0.0.1:9200/,登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的8080隧道,点击右侧的编辑

70a50dff15bc61c6b7bdc47dddcc8542.png


修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名,本例为test01

点击更新


a8bf35f2cf0c0252e2bedb2118f8524a.png


更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留过的二级子域名名称,将其复制下来


0a886a4bac24e57640e015117d066933.png


3.2 测试使用固定公网地址


打开postman,使用固定http地址进行调用


50518f854a2215ccd0067e428dc04be1.png


同样在服务端debug调试查看请求是否进入接口,进入接口表示成功

b071e9626c659f5641a33bdbb3abfe45.png

4. Cpolar监听器


我们还可以使用cpolar监听器(http://localhost:4040)查看接口请求日志,处理一个讨厌的bug。甚至可以重播请求消息包,加速测试的请求,单击重放(Replay)按钮,重新发送该HTTP信令请求,而不是手动重新触发操作。下面介绍使用cpolar监听器监听请求。


4.1 开启侦听功能


选择我们刚刚创建配置的http隧道,并点击右侧的编辑


ea7231d30368cf47043b3ac6d4c6080b.png

打开高级设置,开启侦听功能

c8460dabe5dac83118e8b9f71c9c0f7b.png


4.2 请求侦听

在浏览器访问本地4040端口,http://localhost:4040

372e34870723627ba2699c2428cda6e5.png



向服务端发送请求后,此处就会显示相关的请求日志,可以看到请求的方式,请求的数据,接口路径,和返回状态及结果,极大提高了调试效率。


55b899cbf6e137cc424e1e576d1c98f6.png


目录
打赏
0
0
0
0
24
分享
相关文章
阿里云服务器购买后设置密码、安全组、基础安全服务、挂载云盘等流程简介
对于初次选购阿里云服务器的用户来说,通过阿里云推出的各类活动买到心仪的云服务器仅仅是第一步。为了确保云服务器能够正常运行并承载您的应用,购买之后还需要给云服务器设置远程登录密码、设置安全组规则、设置基础安全、购买并挂载云盘等操作之后,我们才能使用并部署自己的应用到云服务器上。本文将详细介绍在阿里云的活动中购买云服务器后,您必须完成的几个关键步骤,助您快速上手并充分利用云服务器的强大功能。
java springboot监听事件和处理事件
通过上述步骤,开发者可以在Spring Boot项目中轻松实现事件的发布和监听。事件机制不仅解耦了业务逻辑,还提高了系统的可维护性和扩展性。掌握这一技术,可以显著提升开发效率和代码质量。
94 33
解析HTTP代理服务器不稳定致使掉线的关键原因
随着数字化发展,网络安全和隐私保护成为核心需求。HTTP代理服务器掉线原因主要包括:1. 网络问题,如本地网络不稳定、路由复杂;2. 服务器质量差、IP资源不稳定;3. 用户配置错误、超时或请求频率异常;4. IP失效或协议不兼容。这些问题会影响连接稳定性。
72 8
实时云渲染中的NAT转发服务支持个人电脑秒变云渲染服务器
实时云渲染技术广泛应用于XR领域,助力数千客户完成云端部署。平行云推出的转发服务解决了家庭网络动态IP问题,使个人电脑成为实时云渲染服务器,按实际使用分钟数计费,无用户访问不收费。通过配置LarkXR的代理转发Server和ICE Server,开发者可轻松实现互联网访问内网XR应用,极大提升了开发、测试和演示的便利性。
java springboot监听事件和处理事件
通过上述步骤,开发者可以在Spring Boot项目中轻松实现事件的发布和监听。事件机制不仅解耦了业务逻辑,还提高了系统的可维护性和扩展性。掌握这一技术,可以显著提升开发效率和代码质量。
81 13
|
1月前
|
Java Spring Boot监听事件和处理事件
通过上述步骤,我们可以在Java Spring Boot应用中实现事件的发布和监听。事件驱动模型可以帮助我们实现组件间的松耦合,提升系统的可维护性和可扩展性。无论是处理业务逻辑还是系统事件,Spring Boot的事件机制都提供了强大的支持和灵活性。希望本文能为您的开发工作提供实用的指导和帮助。
107 15
Java Springboot监听事件和处理事件
通过这些内容的详细介绍和实例解析,希望能帮助您深入理解Spring Boot中的事件机制,并在实际开发中灵活应用,提高系统的可维护性和扩展性。
65 7
HTTP代理服务器在网络安全中的重要性
随着科技和互联网的发展,HTTP代理IP中的代理服务器在企业业务中扮演重要角色。其主要作用包括:保护用户信息、访问控制、缓存内容、负载均衡、日志记录和协议转换,从而在网络管理、性能优化和安全性方面发挥关键作用。
98 2
【手把手教你】如何免费畅快使用阿里云ECS搭建私有Overleaf论文写作服务
本文详细介绍如何利用阿里云ECS免费搭建私有Overleaf论文写作服务,包括ECS服务器的部署、Overleaf服务的安装、TexLive包的更新、XeLaTeX修复、中文字体支持及账号管理等步骤。通过这些操作,你可以实现免费且高效的多人协作论文写作,避免付费版本的高昂费用。适合需要频繁合作撰写论文的团队使用。
240 1
【手把手教你】如何免费畅快使用阿里云ECS搭建私有Overleaf论文写作服务
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等