HCIP-BGP实验4
搭建实验拓扑图

要求
1.全网可达
2.isp只能配置IP地址
实验开始
配置IP地址及环回
r1,r2,r9,r10配ipv4地址(以r1为例)
[Huawei]sysname r1
[r1]interface g0/0/0
[r1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
[r1-GigabitEthernet0/0/0]q
[r1]interface LoopBack 0
[r1-LoopBack0]ip address 1.1.1.1 32
OSPF
r1
[r1]ospf 1 router-id 1.1.1.1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 0.0.0.0 255.255.255.255
r2
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 12.1.1.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]q
[r2-ospf-1]q
[r2]ip route-static 0.0.0.0 0 29.1.1.2
[r2]ospf 1
[r2-ospf-1]default-route-advertise
[r2-ospf-1]q
[r2]acl 2000
[r2-acl-basic-2000]rule permit source any
[r2-acl-basic-2000]q
[r2]interface g0/0/1
[r2-GigabitEthernet0/0/1]nat outbound 2000
r10
[r10]ip route-static 0.0.0.0 0 91.1.1.1
在r10上ping 9.9.9.9
在r1上同样可以ping通

r1配ipv6地址
[r1]ipv6
[r1]interface g0/0/0
[r1-GigabitEthernet0/0/0]ipv6 enable
[r1-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101::1/50
[r1-GigabitEthernet0/0/0]q
[r1]interface LoopBack 0
[r1-LoopBack0]ipv6 enable
[r1-LoopBack0]ipv6 address 1::1/64
r2
[r2]ipv6
[r2]interface g0/0/0
[r2-GigabitEthernet0/0/0]ipv6 enable
[r2-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101::2/50
[r2-GigabitEthernet0/0/0]q
[r2]interface LoopBack 0
[r2-LoopBack0]ipv6 enable
[r2-LoopBack0]ipv6 address 2::2/64
r10
[r10]ipv6
[r10]interface g0/0/1
[r10-GigabitEthernet0/0/1]ipv6 enable
[r10-GigabitEthernet0/0/1]ipv6 address 2002:5b01:0102::1/50
[r10-GigabitEthernet0/0/1]q
[r10]interface LoopBack 0
[r10-LoopBack0]ipv6 enable
[r10-LoopBack0]ipv6 address 10::10/64
r11
[r11]ipv6
[r11]interface g0/0/0
[r11-GigabitEthernet0/0/0]ipv6 enable
[r11-GigabitEthernet0/0/0]ipv6 address 2002:5b01:0102::2/50
[r11-GigabitEthernet0/0/0]q
[r11]interface LoopBack 0
[r11-LoopBack0]ipv6 enable
[r11-LoopBack0]ipv6 address 11::11/64
在r2上ping 一下
在r11上ping一下

做隧道
r2
[r2]interface Tunnel 0/0/0
[r2-Tunnel0/0/0]ipv6 enable
[r2-Tunnel0/0/0]ipv6 address 2002:1d01:0101:4000::1/50
r10
[r10]interface Tunnel 0/0/0
[r10-Tunnel0/0/0]tunnel-protocol ipv6-ipv4 6to4
[r10-Tunnel0/0/0]source g0/0/0
[r10-Tunnel0/0/0]ipv6 enable
[r10-Tunnel0/0/0]ipv6 address 2002:5b01:0102:4000::1/50
做引流
r1
[r1]ipv6 route-static :: 0 2002:1d01:0101::2
r2
[r2]ipv6 route-static :: 0 Tunnel 0/0/0
r10
[r10]ipv6 route-static :: 0 Tunnel 0/0/0
[r10]interface g0/0/1
[r10-GigabitEthernet0/0/1]ripng default-route originate
RIP
r10
[r10]ripng 1
[r10-ripng-1]q
[r10]interface g0/0/1
[r10-GigabitEthernet0/0/1]ripng 1 enable
[r10-GigabitEthernet0/0/1]q
[r10]interface LoopBack 0
[r10-LoopBack0]ripng 1 enable
r11
[r11]ripng 1
[r11-ripng-1]q
[r11]interface LoopBack 0
[r11-LoopBack0]ripng 1 enable
[r11-LoopBack0]q
[r11]interface g0/0/0
[r11-GigabitEthernet0/0/0]ripng 1 enable
在r10宣告隧道
[r10]interface Tunnel 0/0/0
[r10-Tunnel0/0/0]ripng 1 enable
查看缺省
在r2上测试隧道是否通

在r1上ping r2的环回

在r2上写指向r1的静态路由
[r2]ipv6 route-static 1::1 64 2002:1D01:101::1
此时在r2上ping r1的环回

在r1上ping ,并不通

解决
由于地址划分有问题,修改如下
r10
[r10]interface LoopBack 0
[r10-LoopBack0]undo ipv6 address
[r10-LoopBack0]ipv6 address 2002:5b01:0102:8000::1/50
[r10-LoopBack0]ripng 1 enable
在ping一次
继续配置ipv6地址及环回地址
r3
[r3]ipv6
[r3]interface g0/0/0
[r3-GigabitEthernet0/0/0]ipv6 enable
[r3-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:4::2/64
[r3-GigabitEthernet0/0/0]q
[r3]interface LoopBack 0
[r3-LoopBack0]ipv6 enable
[r3-LoopBack0]ipv6 address 3::3/64
[r3-LoopBack0]q
[r3]interface g0/0/1
[r3-GigabitEthernet0/0/1]ipv6 enable
[r3-GigabitEthernet0/0/1]ipv6 address 2002:1d01:0101:5::1/64
r4
[r4]ipv6
[r4]interface g0/0/0
[r4-GigabitEthernet0/0/0]ipv6
[r4]interface g0/0/0
[r4-GigabitEthernet0/0/0]ipv6 enable
[r4-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:5::2/64
[r4-GigabitEthernet0/0/0]q
[r4]interface LoopBack 0
[r4-LoopBack0]ipv6 enable
[r4-LoopBack0]ipv6 address 4::4/64
[r4-LoopBack0]q
[r4]interface g0/0/1
[r4-GigabitEthernet0/0/1]ipv6 enable
[r4-GigabitEthernet0/0/1]ipv6 address 2002:1d01:0101:6::1/64
r5
[r5]interface LoopBack 0
[r5-LoopBack0]ipv6 enable
[r5-LoopBack0]ipv6 address 5::5/64
[r5-LoopBack0]q
[r5]interface g0/0/0
[r5-GigabitEthernet0/0/0]ipv6 enable
[r5-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:6::2/64
[r5-GigabitEthernet0/0/0]q
[r5]interface g0/0/1
[r5-GigabitEthernet0/0/1]ipv6 enable
[r5-GigabitEthernet0/0/1]ipv6 address 2002:1d01:0101:7::1/64
r6
[r6]interface g0/0/0
[r6-GigabitEthernet0/0/0]ipv6 enable
[r6-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:7::2/64
[r6-GigabitEthernet0/0/0]q
[r6]interface LoopBack 0
[r6-LoopBack0]ipv6 enable
[r6-LoopBack0]ipv6 address 6::6/64
[r6-LoopBack0]q
[r6]interface g0/0/1
[r6-GigabitEthernet0/0/1]ipv6 enable
[r6-GigabitEthernet0/0/1]ipv6 address 2002:1d01:0101:8::1/64
r7
[r7]ipv6
[r7]interface LoopBack 0
[r7-LoopBack0]ipv6 enable
[r7-LoopBack0]ipv6 address 7::7/64
[r7-LoopBack0]q
[r7]interface g0/0/0
[r7-GigabitEthernet0/0/0]ipv6 enable
[r7-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:8::2/64
[r7-GigabitEthernet0/0/0]q
[r7]interface g0/0/1
[r7-GigabitEthernet0/0/1]ipv6 enable
[r7-GigabitEthernet0/0/1]ipv6 address 2002:1d01:0101:9::1/64
r8
[r8]ipv6
[r8]interface LoopBack 0
[r8-LoopBack0]ipv6 enable
[r8-LoopBack0]ipv6 address 8::8/64
[r8-LoopBack0]q
[r8]interface g0/0/0
[r8-GigabitEthernet0/0/0]ipv6 enable
[r8-GigabitEthernet0/0/0]ipv6 address 2002:1d01:0101:9::2/64
OSPF
r3
[r3]ospfv3 1
[r3-ospfv3-1]router-id 3.3.3.3
[r3-ospfv3-1]q
[r3]interface g0/0/1
[r3-GigabitEthernet0/0/1]ospfv3 1 area 0
[r3-GigabitEthernet0/0/1]q
[r3]interface LoopBack 0
[r3-LoopBack0]ospfv3 1 area 0
r4
[r4]ospfv3 1
[r4-ospfv3-1]router-id 4.4.4.4
[r4-ospfv3-1]q
[r4]interface LoopBack 0
[r4-LoopBack0]ospfv3 1 area 0
[r4-LoopBack0]q
[r4]interface g0/0/0
[r4-GigabitEthernet0/0/0]ospfv3 1 area 0
[r4-GigabitEthernet0/0/0]q
[r4]interface g0/0/1
[r4-GigabitEthernet0/0/1]ospfv3 1 area 0
r5
[r5]ospfv3 1
[r5-ospfv3-1]router-id 5.5.5.5
[r5-ospfv3-1]q
[r5]interface LoopBack 0
[r5-LoopBack0]ospfv3 1 area 0
[r5-LoopBack0]q
[r5]interface g0/0/0
[r5-GigabitEthernet0/0/0]ospfv3 1 area 0
[r5-GigabitEthernet0/0/0]q
[r5]interface g0/0/1
[r5-GigabitEthernet0/0/1]ospfv3 1 area 0
r6
[r6]ospfv3 1
[r6-ospfv3-1]router-id 6.6.6.6
[r6-ospfv3-1]q
[r6]interface g0/0/0
[r6-GigabitEthernet0/0/0]ospfv3 1 area 0
[r6-GigabitEthernet0/0/0]q
[r6]interface LoopBack 0
[r6-LoopBack0]ospfv3 1 area 0
RIP
r7
[r7]ripng 1
[r7-ripng-1]q
[r7]interface g0/0/1
[r7-GigabitEthernet0/0/1]ripng 1 enable
[r7-GigabitEthernet0/0/1]q
[r7]interface LoopBack 0
[r7-LoopBack0]ripng 1 enable
r8
[r8]ripng 1
[r8-ripng-1]q
[r8]interface LoopBack 0
[r8-LoopBack0]ripng 1 enable
[r8-LoopBack0]q
[r8]interface g0/0/0
[r8-GigabitEthernet0/0/0]ripng 1 enable
在r8上ping

建立BGP
r3
[r3]bgp 64512
[r3-bgp]confederation id 100
[r3-bgp]router-id 3.3.3.3
[r3-bgp]peer 4::4 as-number 64512
[r3-bgp]peer 4::4 connect-interface lo 0
[r3-bgp]ipv6-family
[r3-bgp-af-ipv6]peer 4::4 enable
r4
[r4]bgp 64512
[r4-bgp]confederation id 100
[r4-bgp]router-id 4.4.4.4
[r4-bgp]peer 3::3 as-number 64512
[r4-bgp]peer 3::3 connect-interface lo 0
[r4-bgp]peer 5::5 as-number 64512
[r4-bgp]peer 5::5 connect-interface lo 0
[r4-bgp]ipv6-family
[r4-bgp-af-ipv6]peer 3::3 enable
[r4-bgp-af-ipv6]peer 3::3 reflect-client
[r4-bgp-af-ipv6]peer 5::5 enable
[r4-bgp-af-ipv6]peer 5::5 reflect-clien
r5
[r5]bgp 64512
[r5-bgp]confederation id 100
[r5-bgp]confederation peer-as 64513
[r5-bgp]router-id 5.5.5.5
[r5-bgp]peer 4::4 as-number 64512
[r5-bgp]peer 4::4 connect-interface lo 0
[r5-bgp]peer 6::6 as-number 64513
[r5-bgp]peer 6::6 connect-interface lo 0
[r5-bgp]peer 6::6 ebgp-max-hop
[r5-bgp]ipv6-family
[r5-bgp-af-ipv6]peer 4::4 enable
[r5-bgp-af-ipv6]peer 4::4 next-hop-local
[r5-bgp-af-ipv6]peer 6::6 enable
r6
[r6]bgp 64513
[r6-bgp]router-id 6.6.6.6
[r6-bgp]confederation id 100
[r6-bgp]confederation peer-as 64512
[r6-bgp]peer 5::5 as-number 64512
[r6-bgp]peer 5::5 connect-interface lo 0
[r6-bgp]peer 5::5 ebgp-max-hop
[r6-bgp]peer 2002:1D01:101:9::1 as-number 101
[r6-bgp]ipv6-family
[r6-bgp-af-ipv6]peer 5::5 enable
[r6-bgp-af-ipv6]peer 2002:1D01:101:9::1 enable
[r6-bgp]peer 2002:1D01:101:8::2 as-number 101
[r6-bgp]ipv6-family
[r6-bgp-af-ipv6]peer 2002:1D01:101:8::2 enable
r7
[r7]bgp 101
[r7-bgp]router-id 7.7.7.7
[r7-bgp]peer 2002:1D01:101:8::1 as-number 100
[r7-bgp]peer 8::8 as-number 101
[r7-bgp]peer 8::8 connect-interface lo 0
[r7-bgp]ipv6-family
[r7-bgp-af-ipv6]peer 8::8 enable
[r7-bgp-af-ipv6]peer 8::8 next-hop-local
[r7-bgp-af-ipv6]peer 2002:1D01:101:8::1 enable
r8
[r8]bgp 101
[r8-bgp]router-id 8.8.8.8
[r8-bgp]peer 7::7 as-number 101
[r8-bgp]peer 7::7 connect-interface lo 0
[r8-bgp]ipv6-family
[r8-bgp-af-ipv6]peer 7::7 enable
重发布
r7
[r7-bgp]ipv6-family
[r7-bgp-af-ipv6]import-route ripng 1
r6
[r6-bgp]ipv6-family
[r6-bgp-af-ipv6]import-route ospfv3 1
以上就是基本操作了
相关文章:
HCIP-BGP实验4
搭建实验拓扑图 要求 1.全网可达 2.isp只能配置IP地址 实验开始 配置IP地址及环回 r1,r2,r9,r10配ipv4地址(以r1为例) [Huawei]sysname r1 [r1]interface g0/0/0 [r1-GigabitEthernet0/0/0]ip address 12.1.1.1 24 [r1-GigabitEthernet0/0/0]q [r1]interface LoopBack 0…...
数据挖掘笔记1
课程:清华大学-数据挖掘:理论与算法(国家级精品课)_哔哩哔哩_bilibili 一、Learning Resources 二、Data 数据是最底层的一种表现形式。数据具有连续性。从存储上来讲,数据分为逻辑上的和物理层的。大数据࿱…...
Spring RabbitMQ那些事(3-消息可靠传输和订阅)
目录 一、序言二、生产者确保消息发送成功1、为什么需要Publisher Confirms2、哪些消息会被确认处理成功 三、消费者保证消息被处理四、Spring RabbitMQ支持代码示例1、 application.yml2、RabbigtMQ配置3、可靠生产者配置4、可靠消费者配置5、测试用例 一、序言 在有些业务场…...
揭秘 Kafka 高性能之谜:一文读懂背后的设计精粹与技术实现
Kafka在性能方面有着显著的优势,这也使得Kafka的应用非常广泛,那kakfa的性能为何如此优异呢?本文将带你探寻kafka高性能之谜。 kafka的高性能概括起来有如下几点:顺序写入磁盘与I/O优化、批量处理、页缓存、零拷贝技术、分区并行处…...
canvas绘制美国国旗(USA Flag)
查看专栏目录 canvas实例应用100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…...
Python中的`__all__`魔法函数使用详解
概要 Python是一门灵活而强大的编程语言,提供了各种机制来控制模块的导入和访问。其中,__all__魔法函数是一种用于限制模块导入的机制,可以明确指定哪些变量、函数或类可以被导入。本文将深入探讨__all__的作用、用法以及示例,以…...
Studio One 6 mac 6.5.2 激活版 数字音乐编曲创作
PreSonus Studio One是PreSonus出品的一款功能强大的音乐创作软件。主要为用户提供音乐创作、录音、编辑、制作等功能。它可以让你创造音乐,无限的轨道,无限的MIDI和乐器轨道,虚拟乐器和效果通道,这些都是强大和完美的。 软件下载…...
GitHub图床TyporaPicGo相关配置
本文作者: slience_me 文章目录 GitHub图床&Typora&PicGo相关配置1. Github配置2. picGo配置3. Typora配置 GitHub图床&Typora&PicGo相关配置 关于Typora旧版的百度网盘下载路径 链接:https://pan.baidu.com/s/12mq-dMqWnRRoreGo4MTbKg?…...
FireAlpaca:轻量级、免费的Mac/Win绘图软件,让你的创意如火燃烧!
FireAlpaca是一款轻量级、免费的绘图软件,适用于Mac和Win系统,让你的创作过程更加快捷、简便。无论是绘制漫画、插图、设计作品还是进行简单的图片编辑,FireAlpaca都能满足你的需求。 首先,FireAlpaca具有直观友好的用户界面&…...
用 Python 制作可视化 GUI 界面,一键实现自动分类管理文件!
经常杂乱无章的文件夹会让我们找不到所想要的文件,因此小编特意制作了一个可视化GUI界面,通过输入路径一键点击实现文件分门别类的归档。 不同的文件后缀归类为不同的类别 我们先罗列一下大致有几类文件,根据文件的后缀来设定,大…...
【STM32】USB程序烧录需要重新上电 软件复位方法
文章目录 一、问题二、解决思路2.1 直接插拔USB2.2 给芯片复位 三、解决方法3.1 别人的解决方法3.2 在下载界面进行设置 一、问题 最近学习STM32的USB功能,主要是想要使用虚拟串口功能(VCP),发现每次烧录之后都需要重新上电才可以…...
Java数据结构与算法:图算法之深度优先搜索(DFS)
Java数据结构与算法:图算法之深度优先搜索(DFS) 大家好,我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编,一个热爱编程的程序猿。今天,让我们一起探索图算法中的深度优先搜索(DFS&…...
SpringBoot整合QQ邮箱发送验证码
一、QQ开启SMTP 打开QQ邮箱,点击设置,进入账号,往下滑后,看见服务状态后,点击管理服务 进入管理服务后,打开服务,然后获取授权码 二 、导入依赖 <!-- 邮箱--><dependency>&…...
云虚拟主机怎么修改代码?如何修改部署在虚拟主机的网站代码?
很多站长成功创建网站之后,或多或少都会对网站代码进行适当修改。比如boke112百科使用YIA主题后,也根据自己的需要进行了多个方面的小修改。 那么如果网站是部署在虚拟主机上的,那么应该如何修改这些网站代码呢?其实,…...
电脑加固态硬盘有什么好处
电脑加固态硬盘有很多好处,以下是一些主要的优点: 1. 启动速度更快:固态硬盘(SSD)的启动速度比传统机械硬盘(HDD)快得多。这是因为固态硬盘没有旋转部件,而传统硬盘的读写头需要不断…...
LabVIEW电火花线切割放电点位置
介绍了一个电火花线切割放电点位置分布评价系统,特别是在系统组成、硬件选择和LabVIEW软件应用方面。 本系统由两个主要部分组成:硬件和软件。硬件部分包括电流传感器、高速数据采集卡、开关电源、电阻和导线。软件部分则由LabVIEW编程环境构成…...
信通院发布《全球数字经济白皮书 (2023年)》解析
文章目录 前言一、白皮书目录二、白皮书核心观点(一)主要国家优化政策布局,数字经济政策导向更加明晰、体系更加完善(二) 数字经济加速构筑经济复苏关键支撑(三)全球数字经济多极化趋势进一步深化(四)数字经济重点领域发展成效显著三、白皮书的主要内容前言 当前,世…...
Spring5系列学习文章分享---第三篇(AOP概念+原理+动态代理+术语+Aspect+操作案例(注解与配置方式))
目录 AOP概念AOP底层原理AOP(JDK动态代理)使用 JDK 动态代理,使用 Proxy 类里面的方法创建代理对象**编写** **JDK** 动态代理代码 AOP(术语)AOP操作(准备工作)**AOP** **操作(**AspectJ注解)**AOP** **操作(**AspectJ…...
BL0942 内置时钟免校准计量芯片 用于智能家居领域 上海贝岭 低成本 使用指南
BL0939是上海贝岭股份有限公司开发的一款用于智能家居领域进行电能测量的专用芯片,支持两路测量,可同时进行计量和漏电故障检测,漏电检测电流可设,响应时间快,具有体积小,外围电路简单,成本低廉…...
【算法专题】动态规划之路径问题
动态规划2.0 动态规划 - - - 路径问题1. 不同路径2. 不同路径Ⅱ3. 珠宝的最高价值4. 下降路径最小和5. 最小路径和6. 地下城游戏 动态规划 - - - 路径问题 1. 不同路径 题目链接 -> Leetcode -62.不同路径 Leetcode -62.不同路径 题目:一个机器人位于一个 m …...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...
适应性Java用于现代 API:REST、GraphQL 和事件驱动
在快速发展的软件开发领域,REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名,不断适应这些现代范式的需求。随着不断发展的生态系统,Java 在现代 API 方…...

