- 博客(37)
- 收藏
- 关注

原创 解决跨域问题
跨域是浏览器受同源策略的限制,同源策略是浏览器为确保资源安全,而遵循的一种策略,该策略对访问资源进行了一些限制(如发送 ajax 请求,操作 dom,读取 cookie)。最常见的影响就是发送 ajax 请求,本文着重讲这部分。我们将称为,将称为。,所处源和目标源的协议、域名、端口都相同才是同源,否则就是非同源,即跨域。注意:1.跨域限制仅存在浏览器端,服务端不存在跨域限制。2.即使跨域了,网络请求也可以正常发出,但响应数据不会交给开发者。
2024-10-22 14:51:09
1106

原创 Web和UE5像素流送、通信教程
此时在web端就能看到ue5的内容了,并且在左侧还可以发送数据或命令与ue5交互。找到自己虚幻引擎对应版本的项目并下载下来,我这里用的是5.3。页面内容如下,点击设置按钮,将端口号改为。打开工程,点击运行按钮运行项目。,下载需要依赖并启动项目。,点击下载创建一个工程。
2024-09-30 17:28:18
1706

原创 发布npm包到GitLab教程
之前在研究如何搭建UI组件库(内部使用),其中重要的一步就是发布npm包到GitLab。中间踩了很多坑,在这里记录一下整个流程方便大家快速上手。不足之处欢迎指出🙏。
2024-08-28 23:54:09
1477

原创 30分钟速通ROS联合Webots仿真实战
本文是ROS联合Webots仿真实战教程,不包含ROS环境安装配置教程,ROS环境安装配置教程可以参考。
2024-06-25 16:51:40
2658
9

原创 JavaScript 原型链详解
在 JavaScript 中,每个对象都有一个原型(prototype),而原型又是一个对象。当你访问一个对象的属性或方法时,如果对象本身没有这个属性或方法,JavaScript 引擎就会沿着原型链去查找,直到找到相应的属性或方法或者到达原型链的顶端。
2024-05-02 16:12:06
410
3
原创 【Ant Design】table组件分页器固定位置
Ant Desig 的table组件分页器的位置不能固定在底部,当数据内容高度变小时,分页器就会自动跟随移动,影响用户体验且不美观。查找了antd官网table的所有配置,没有找到相关配置能够设置表格内容高度。,但是这个只能设置表格内容的最大值,使其出现滚动的效果,不能设置最小值。最终使用修改css样式来解决,就是用上面的。类选择器,设置表格内容的最小值。
2024-12-27 16:39:38
570
原创 rlayers加载wmts
用rlayers加载wmts被搞了半天,结果发现不是代码的问题,而是网上那些wmts服务有问题,下面分享几个可以使用的wmts服务。以下是一些,可以直接使用它们来测试rlayers。
2024-12-18 15:11:01
456
原创 Windows 使用批处理脚本快速释放被占用的端口
Windows 批处理脚本,也称或Batch File,是一种基于命令行的脚本语言,用于 Windows 操作系统中自动化执行一系列命令。批处理脚本文件的扩展名为.bat或.cmd,可以在命令提示符(CMD)中直接运行。流程控制:通过使用ifforgoto等语句,可以控制脚本的执行流程。系统命令调用:可以执行 Windows 内置命令,如netstat(查看网络连接)、taskkill(终止进程)等。环境变量:可以使用set命令来设置或读取环境变量,灵活控制脚本的参数和执行。自动化任务。
2024-11-10 16:43:14
910
原创 Cesium使用flyToBoundingSphere实现倾斜相机视角观察物体
之前有一篇文章介绍如何使用,后面发现了一个API,能直接实现我想要的效果。所以我封装了一个函数,通过使用API,自动调整相机的位置和视角,实现相机飞向指定的包围球并观察目标物体的效果。该函数可根据目标的边界自动计算最佳的相机距离,实现便捷的倾斜视角观察。
2024-11-04 16:59:33
662
原创 封装Cesium中dom元素跟随实体移动的弹窗类
在项目中经常会遇到一个需求就是一个弹窗/面板跟随实体移动。最开始的方法是将html转成图片,然后放到实体的广告板上,但是html转图片会有点卡而且清晰度不够,所以打算换一种思路。如此一来,便可以达到弹窗跟随实体移动的效果,具体实现不难,请看代码注释。因为最近在学习ts,所以就顺便写成ts练练手了。
2024-08-16 00:19:03
482
原创 【Cesium】Cesium图层请求完成的回调
console.error("图层请求时发生错误:", error);reject(new Error("图层请求失败"));console.log("图层请求成功");console.log("图层请求失败");// 将imageryProvider添加到地图的图层列表中,使得图层可以在地图上显示。console.log("开始请求图层");// 添加图层(Promise)// 添加图层(async/await语法糖)Cesium图层请求完成的回调。"图层请求时发生错误:"// 给按钮添加点击事件。
2024-08-14 23:23:39
770
原创 Cesium倾斜相机视角观察物体
我们算出来需要平移x距离,x单位是米(因为h单位是米),而相机的位置的以经纬度确认的,因此需要做米到经纬度的转换,这里不必赘述,请看我之前的。回忆一下高中的知识,在直角三角形中,已知了一个角α和边h,可以求x。cesium的api提供了倾斜相机视角的配置,但是直接使用cesium的api不能达到我们想要的效果。在cesium中,我们有时需要倾斜相机视角去观察物体,如相机俯视45观察物体。,将相机偏移了-45度,因此物体超出了相机的视野,我们也就看不到物体了。原因很简单,我们看到了视野都是相机的视野。
2024-08-11 23:56:23
666
原创 为什么要使用双token
想知道这个问题的答案,我们先了解一下单点登录(SSO)。单点登录(Single Sign-On,SSO)是一种认证技术,允许用户使用单一的登录凭据(如用户名和密码)访问多个独立的软件系统。SSO系统的一个常见例子是Google账户,用户登录一次Google账户后,可以访问Gmail、Google Drive、YouTube等多个Google服务。
2024-07-30 00:06:38
744
原创 Cesium 判断位置是否在当前视口范围内
在三维地理信息系统(GIS)应用中,判断一个位置是否在当前视口范围内是一个常见需求。本文将介绍一个使用 Cesium.js 库实现这一功能的函数 isPositionInViewport()
2024-07-17 16:07:35
659
原创 ECharts常用配置项
在项目中会经常用到ECharts做可视化图表,里面的配置项比较多,每次都去官方文档查比较麻烦。在这里记录一下ECharts的常用配置项,方便自己也方便他人快速使用ECharts。
2024-07-16 22:39:48
466
原创 解决ESLint和Prettier冲突的问题
在配置了ESLint的项目中使用Prettier进行格式化可能会出现冲突,不如Prettier配置了使用双引号,ESLint配置了单引号,当然可以一个一个改成一样的配置,但是比较麻烦。我发现可以直接使用ESLint的规则进行格式化。
2024-07-15 22:02:00
879
1
原创 【计算机网络】实验九WEB 页面请求全历程协议及数据包解析
注意该分组的 Option 字段内容,给出了 MSS=1452 字节. 该连接请求确认报文不携带数据(Len=0),但消耗一个序号。第8帧请求了数据,下一个序列号是494,第9帧回传报文的ACK=494,但是代码是302,也就是发生了重定向(没有找到),所以在第11帧又重传了一遍,确认号=494,是对第8帧请求的回复。确认号(Acknowledgment Number):接收方在收到数据段后,会发送一个带有确认号的ACK段,确认号表示它期望接收的下一个字节的序号,即确认已经收到的所有字节。
2024-06-28 08:30:00
2107
1
原创 【计算机网络】实验八 动态主机配置协议 DHCP分析
(1)DHCP DISCOVER报文中client填写了希望配置给它的IP地址,这个IP地址是上次执行DHCP协议时DHCP服务器配置给它的,这种处理通常会导致同一端口(或同一物理地址)的同一主机每次获得的是相同的IP地址;(2)DHCP OFFER、DHC PREQUEST和DHCP ACK报文都需要经网关219.222.170.254转发,client才能最终得到IP的配置参数,这里的DHCP ACK、DHCP OFFER目标地址不是广播地址,是配置给client的IP地址。重点:DHCP的配置过程;
2024-06-27 08:30:00
1148
原创 【计算机网络】实验七 域名系统DNS分析
在Internet上域名与IP地址之间是一对一(或者多对一)的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。查寻的域名:www.sina.com;RD=1,期望递归查询;web.163.com.lxdns.com是别名www.cache.wangsu.netease.com的规范主机名,TTL是515秒。us.sina.com.cn是别名www.sina.com的规范主机名,TTL是1分钟。
2024-06-26 08:30:00
1560
原创 【计算机网络】实验六 超文本传送协议HTTP
q=0.2,*/*;分组1、2完成的是www.google.com的域名解析,分组3、4、5完成的是IE浏览器客户端与google服务器的TCP连接(TCP连接需要3次握手协议完成,见第3章的有关内容),以便执行后续的HTTP协议。PREF=ID=2922596a77b005c7:TM=1073520455:LM=1073520455:S=Ycw7Yx3HeW-X0ndK(具体Cookie的值,包含了ID、时间戳等信息)
2024-06-25 08:30:00
1199
原创 【计算机网络】实验五 TCP数据包及连接建立过程分析
实验名称 实验五 TCP数据包及连接建立过程分析重点难点 重点:TCP 数据包格式; 难点:探索TCP数据包格式各字段具体的物理意义,熟悉TCP连接的建立过程和数据传输过程实验目的 1. 学习并分析TCP数据包的结构、含义;2.分析TCP连接的建立过程和数据传输过程。
2024-06-24 15:46:57
2272
原创 【计算机网络】实验四 网际控制报文协议 ICMP 分析
如果发现如下图6 的对ping报文的标识/序号字段解码显示(BE与LE),是因为wireshark考虑到window系统与Linux系统发出的ping报文(主要指ping应用字段而非包含IP头的ping包)的字节顺序不一样(windows为LE:little-endian byte order,即低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。ICMP 不是高层协议,而是 IP 层的协议。检验和是包括数据在内的整个ICMP 数据包的校验和,其计算方法和IP 头部校验和的计算方法是一样的。
2024-06-01 20:25:56
1833
原创 【计算机网络】实验三 IP 数据包的解析
在传输过程中,每个路由器都会读取IP数据包的首部信息,根据其中的目标IP地址来确定下一跳的路由,并转发数据包。打开文件“计算机网络实验”,这是一个网络通信记录,详细记录了分组的序号、相对时间、源地址、目标地址、协议类型、内容,第26 个分组为例,可以发现该MAC 帧目标address 是ff:ff:ff:ff:ff:ff,是一个广播帧(broadcast),源地址是00 25 11 4e 02 34 ,帧类型是地址解析协议ARP(0806),本机查询网关的物理地址。IP 数据包的结构和含义是怎样的?
2024-06-01 20:11:28
2084
1
原创 【计算机网络】实验二 以太网MAC帧分析
【计算机网络】该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包,告诉对方自己是它需要查找的MAC地址;图中的Frame 26 为例,可以发现该MAC 帧是本机发出的一个广播帧broadcast,目标address 是ff:ff:ff:ff:ff:ff,源地址是00 25 11 4e 02 34 ,帧类型是地址解析协议ARP(0806),ff:ff:ff:ff:ff:ff 是广播地址。重点:以太网帧格式;
2024-05-30 23:30:37
2417
原创 【计算机网络】 实验一 分组嗅探器的使用和网
将以上抓取期间获得的网络数据包保存为文件“计算机网络实验.cap”,这是一个包括204 个分组的网络通信记录,当前主机IP 地址是219.222.170.14 、网关地址是219.222.170.254、文件中出现的119.75.217.56 是百度公司的IP 地址、172.30.0.19 是东莞理工学院网络中心提供的 Windows Server Update Services (WSUS)。文件详细记录了分组的序号、相对时间、源地址、目标地址、协议类型、内容,如图1是对第52 个分组的详细信息。
2024-05-30 23:26:02
1367
1
原创 Webots项目源码下载和运行
Webots项目源码下载和运行。将源代码(见文末)全部拉下来,复制粘贴到webots的安装目录。将文件直接复制到这里,如果提示有重复的文件,选择替换即可。右击webots图标,打开文件所在位置。如有其他问题,欢迎留言提问。
2024-05-06 19:17:10
667
1
原创 使用JavaScript截取视频某一帧
在网页开发中,我们经常需要对媒体文件进行处理,其中包括视频文件。有时候,我们可能需要从视频中提取特定的帧,并将其显示在网页上。本文将介绍如何使用JavaScript来实现这一功能。
2024-05-02 15:34:56
2395
8
原创 记录一个蓝桥杯判题系统的一个坑
但是按道理split()和split(" ")的效果是一样的,不知道为什么后者在这里就报错了。经过仔细排查发现是spilit()函数的问题,去掉里面的空格字符串(" ")就能成功运行。运行后报错,段错误!
2023-10-29 22:52:04
366
1
原创 记录一个css border-collapse: collapse的小坑
查了一下说是border-collapse: collapse;与 border-radius;会有冲突,把border-collapse: collapse;然后把table里面的代码一行一行试,终于发现了,原来是border-collapse: collapse;另一个问题是如下图会出现不知道哪来的间隔,同样把border-collapse: collapse;可以看到最终效果是表格的边框没有圆角,找了很久不知道是什么问题,这段代码是加在table中的。希望实现简单的圆角边框效果;
2023-10-25 12:08:44
302
1
原创 npm报错: This is related to npm not being able to find a file.解决办法
研究一番发现要在创建的vue项目根目录下执行npm run serve命令。
2023-07-10 21:51:41
3255
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人