【AI】✈️问答页面搭建-内网穿透公网可访问!

目录
👋前言
👀一、后端改动
🌱二、内网穿透
💞️三、前端改动
🍹四、测试
📫五、章末
👋前言
小伙伴们大家好,上次本地搭建了一个简单的 ai 页面,实现流式输出问答内容,文章链接如下:
【AI】⭐️搭建一个简单的个人问答网页-CSDN博客
这次就接着上次的页面做点调整,因为之前的项目是基于本地启动的项目,也只限本地访问,想要在公网访问到我们自己搭建的项目还要借助内网穿透,或者说将我们的服务部署到远程服务器上,相比于后者,小荷包不支持,但是内网穿透工具,网上还是很多的(也可以参考之前的文章,有提及别的作者推荐比较好用的,链接如下)!
【服务器搭建】✈️用自己电脑搭建一个服务器!_服务器怎么搭建-CSDN博客
👀一、后端改动
为了避免跨域的问题,这里先提前加一个配置,不做限制
@Configuration 注解表明是一个配置类, spring 启动时会自动扫描并且注入, 实现 WebMvcConfigurer 接口,重写跨域方法(该接口的功能还有很多,可以详细了解下)
/*** @author HuangBenben */
@Configuration
public class CorsConfig implements WebMvcConfigurer {@Overridepublic void addCorsMappings(CorsRegistry registry) {// 配置全局跨域规则registry.addMapping("/**") // 允许所有路径.allowedOrigins("*") // 允许所有来源.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") // 允许的 HTTP 方法.allowedHeaders("*") // 允许所有请求头.allowCredentials(false) // 是否允许发送 Cookie.maxAge(3600); // 预检请求缓存时间(秒)}}
🌱二、内网穿透
2.1 工具选择
大家可以自行搜索,本地只是临时穿透下,所以选择的极点云,有免费的可以使用
价格 - cpolar 极点云官网
使用的话直接注册,下载后桌面会有这个快捷方式,双击快捷跳转网页管理端页面,输入账号登录之后


2.2 登录到管理页面之后,选择创建隧道,如下,端口号就是后端项目启动使用的端口号,创建成功后,可以在隧道列表中查看映射后的公网地址,这个地址复制下来(会有两个,仔细看的话分别是 http 和 https 的,地址其实一样,复制地址要用)

💞️三、前端改动
做好映射后,前端页面之前的接口设置的是 localhost:8888,现在需要替换成映射后的地址,因为不替换掉的话,即使公网可以访问页面,但是接口是调用不通的,因为会请求访问设备本地的8888端口,改动如下(前端原先完整的代码可以看文章开头提及的文章)

🍹四、测试
直接手机访问穿透后的地址,如下:可以正常访问并且数据也都显示出来了
http://45cb0925.r7.cpolar.top

也可以在这基础上,统计下打进来的请求都是属于哪些 ip ,可以创建个表单独统计,统计的地方可以放到接口方法中,进来之后处理完问题,手动插入一条数据,或者使用 aop 切面,请求该方法前记录下都可以,大致如下:

📫五、章末
到这里也只是做了内网穿透,方便公网访问,针对页面还有很多要调整,比如目前只能显示一条,刷新页面后数据会丢失等问题,后面有时间再做更新。
文章到这里就结束了~

相关文章:
【AI】✈️问答页面搭建-内网穿透公网可访问!
目录 👋前言 👀一、后端改动 🌱二、内网穿透 💞️三、前端改动 🍹四、测试 📫五、章末 👋前言 小伙伴们大家好,上次本地搭建了一个简单的 ai 页面,实现流式输出问答…...
计算机毕业设计原创定制(免费送源码):NodeJS+MVVM+MySQL 樱花在线视频网站
目 录 摘要 1 1 绪论 1 1.1研究背景 1 1.2系统设计思想 1 1.3B/S体系工作原理 1 1.4node.js主要功能 2 1.5论文结构与章节安排 3 2 樱花在线视频网站分析 4 2.1 可行性分析 4 2.2 系统流程分析 4 2.2.1数据增加流程 5 2.3.2数据修改流程 5 2.3.3数据删除流程 5 …...
ECharts热力图-笛卡尔坐标系上的热力图,附视频讲解与代码下载
引言: 热力图(Heatmap)是一种数据可视化技术,它通过颜色的深浅变化来表示数据在不同区域的分布密集程度。在二维平面上,热力图将数据值映射为颜色,通常颜色越深表示数据值越大,颜色越浅表示数…...
【Lua热更新】下篇
上篇链接:【Lua热更新】上篇 文章目录 三、xLua热更新📖1.概述📚︎2.导入xLua框架🔖3. C#调用Lua3.1Lua解析器3.2Lua文件夹的重定向3.3Lua解析器管理器3.4全局变量获取3.5全局函数获取3.6映射到List和Dictionary3.7映射到类3.8映…...
Facebook 与数字社交的未来走向
随着数字技术的飞速发展,社交平台的角色和形式也在不断演变。作为全球最大社交平台之一,Facebook(现Meta)在推动数字社交的进程中扮演了至关重要的角色。然而,随着互联网的去中心化趋势和新技术的崛起,Face…...
微信小程序实现二维码海报保存分享功能
首先在写这个二维码分享海报的时候试过很多方法,比如:canvas中的这个createCanvasContext创建上下文的方法,去网上一搜就是一大堆,但其实这个方法已经被废弃了。Canvas 实例,可通过 SelectorQuery 获取。这是绘制背景图…...
Android 搭建AIDL Client和Server端,双向通信
一、背景 使用AIDL,搭建Client和Server端,实现跨进程通讯,即两个应用之间可以相互通讯。这里列举AIDL实现的方式和需注意的细节,并附上源码。 二、实现方式 2.1 定义AIDL需要的接口,名字为xxx.aidl,Client和Server端 AIDL接口的包名和aidl文件必须一致,…...
深度学习从入门到精通——图像分割实战DeeplabV3
DeeplabV3算法 参数配置关于数据集的配置训练集参数 数据预处理模块DataSet构建模块测试一下数据集去正则化模型加载模块DeepLABV3 参数配置 关于数据集的配置 parser argparse.ArgumentParser()# Datset Optionsparser.add_argument("--data_root", typestr, defa…...
STM32-笔记5-按键点灯(中断方法)
1、复制03-流水灯项目,重命名06-按键点灯(中断法) 在\Drivers\BSP目录下创建一个文件夹exti,在该文件夹下,创建两个文件exti.c和exti.h文件,并且把这两个文件加载到项目中,打开项目工程文件 加载…...
C++ 只出现一次的数字 - 力扣(LeetCode)
点击链接即可查看题目:136. 只出现一次的数字 - 力扣(LeetCode) 一、题目 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间…...
C++设计模式:享元模式 (附文字处理系统中的字符对象案例)
什么是享元模式? 享元模式是一个非常实用的结构型设计模式,它的主要目的是节省内存,尤其在需要创建大量相似对象时。 通俗解释: 想象我们在写一本书,每个字母都需要表示出来。如果每个字母都单独用对象表示ÿ…...
android EditText密码自动填充适配
android上的密码(其实不仅仅是密码,可以是用户名也可以是邮箱)自动填充,是需要考虑适配的。 官方文档:https://developer.android.com/identity/autofill/autofill-optimize?hlzh-cn 什么是自动填充 手机厂商一般会…...
LeetCode 刷题笔记
LeetCode 刷题笔记 1. 20241218 (1)2447 std::gcd是C17引入的一个函数,用于计算两个整数的最大公因数。位于<numeric>头文件中。 #include <iostream> #include <numeric> // std::gcdint main() {int a 36;int b 60…...
【Java基础面试题034】Java泛型擦除是什么?
回答重点 泛型擦除指的是Java编译器在编译时将所有泛型信息删除的过程,以确保与Java1.4及之前的版本保持兼容 泛型参数在运行时会被替换为其上界(通常是Object),这样一来在运行时无法获取泛型的实际类型。 作用:泛型…...
使用ssh命令远程登录服务器的两种便捷方式:简化ssh命令、创建bat文件
1. 简化ssh命令 使用记事本打开该路径C:\Users\<你的用户名>\.ssh\下的config文件,粘贴以下代码: Host myserverHostName 192.168.1.1(这里换成你的ip地址)User your_username(这里换成你的用户名)Port 22保存文件后现在在cmd中直接输入ssh myserv…...
access数据库代做/mysql代做/Sql server数据库代做辅导设计服务
针对Access数据库、MySQL以及SQL Server数据库的代做和辅导设计服务,以下是一些关键信息和建议: 一、服务概述 这些服务通常包括数据库的设计、创建、优化、维护以及相关的编程和查询编写等。无论是Access这样的桌面关系数据库管理系统(RDB…...
第十七届山东省职业院校技能大赛 中职组“网络安全”赛项任务书正式赛题
第十七届山东省职业院校技能大赛 中职组“网络安全”赛项任务书-A 目录 一、竞赛阶段 二、竞赛任务书内容 (一)拓扑图 (二)模块A 基础设施设置与安全加固(200分) (三)B模块安全事件响应/网络安全数据取证/…...
Android学习(五)-Kotlin编程语言-面向对象中的 继承-构造函数-接口三模块学习
首先,我们需要定义一个 Person 类: open class Person {var name ""var age 0fun eat() {println("$name is eating.")} } 注意,Person 类前面加上了 open 关键字,表示这个类可以被继承。在 Kotlin 中&am…...
滑动窗口 + 算法复习
维护一个满足条件的窗口大小,然后进行双指针移动 1.最长子串 题目链接:1.最长子串 - 蓝桥云课 #include<bits/stdc.h> #define int long long using namespace std; string s; int k; signed main() {int max_len0,left0;cin>>s>>k;…...
贪心算法 greedy
文章目录 参考贪心算法[Leetcode455 分发饼干](https://leetcode.cn/problems/assign-cookies/description/)分析题解 [Leetcode135 分发糖果](https://leetcode.cn/problems/assign-cookies/description/)分析题解 leetcode435无重叠区间分析题解 参考 https://github.com/ch…...
双模型混搭方案:OpenClaw同时接入百川2-13B与Qwen的实操演示
双模型混搭方案:OpenClaw同时接入百川2-13B与Qwen的实操演示 1. 为什么需要多模型混搭? 去年冬天,当我第一次尝试用OpenClaw自动化处理技术文档时,发现一个有趣的现象:同一个模型在不同任务上的表现差异巨大。Qwen在…...
南京四季旅游攻略:最美时节去最美地方
南京四季旅游攻略:最美时节去最美地方 🌸🍃🍂❄️本文作者:南京码农 发布日期:2026年3月26日 关键词:南京旅游、四季景点、旅游攻略、南京必去、季节推荐前言:南京,一座四…...
冥想第一千八百三十三天(1833)
1.昨天晚上电动车刹车终于修好了,刹车更紧了,今天的天气很热了,明天就还薄款的运动衣。 2.感谢父母,感谢朋友,感谢家人,感谢不断进步的自己。...
从‘画图’到‘造芯’:模拟版图工程师必须懂的CMOS工艺那些事儿
从‘画图’到‘造芯’:模拟版图工程师必须懂的CMOS工艺那些事儿 当你第一次打开PDK文档,面对密密麻麻的设计规则表格时,是否感觉像在解读天书?作为模拟版图工程师,我们每天都在与纳米级的几何图形打交道,但…...
嵌入式新手入门:用快马平台生成带详细注释的LED控制项目
作为一个嵌入式开发新手,刚开始接触STM32时确实有点懵。寄存器配置、时钟树、GPIO模式这些概念扑面而来,光看理论文档很容易失去方向。最近我发现用InsCode(快马)平台生成带详细注释的基础项目特别适合入门,今天就以最经典的LED流水灯为例&am…...
如何快速配置HomeAssistant格力空调本地控制组件:完整操作指南
如何快速配置HomeAssistant格力空调本地控制组件:完整操作指南 【免费下载链接】HomeAssistant-GreeClimateComponent Custom Gree climate component written in Python3 for Home Assistant. Controls ACs supporting the Gree protocol. 项目地址: https://git…...
从‘生日悖论’到‘碰撞攻击’:一个故事讲明白哈希函数为什么会被攻破
从生日派对到数字指纹:哈希函数的安全冒险之旅 想象一下,你正在参加一个23人的小型生日派对。服务员突然打赌说:"这里至少有两个人同一天生日。"你环顾四周觉得概率渺茫——毕竟一年有365天呢。但惊人的是,这个赌注的胜…...
Element-UI Loading动画实战:如何优雅处理路由跳转与请求拦截(附自定义图标技巧)
Element-UI Loading动画深度优化:从路由拦截到视觉定制的完整方案 在Vue技术栈项目中,Element-UI的Loading服务是提升用户体验的关键组件之一。当页面需要等待数据加载或路由跳转时,一个流畅的加载动画能有效缓解用户的焦虑情绪。本文将深入探…...
别再只用M法了!手把手教你用Arduino和旋转编码器实现M/T法测速(附代码)
别再只用M法了!手把手教你用Arduino和旋转编码器实现M/T法测速(附代码) 在电机控制项目中,精确的速度测量往往是实现闭环控制的第一步。许多初学者会直接采用简单的M法(频率测量法),但在实际测试…...
Synology Photos CPU驱动人脸识别补丁:解锁旧设备AI相册的终极方案
Synology Photos CPU驱动人脸识别补丁:解锁旧设备AI相册的终极方案 【免费下载链接】Synology_Photos_Face_Patch Synology Photos Facial Recognition Patch 项目地址: https://gitcode.com/gh_mirrors/sy/Synology_Photos_Face_Patch 还在为群晖NAS无法使用…...
