Day-02-02

Httpclient测试

安装HTTP Client插件

使用IDEA自带的http接口测试工具——HTTP Client

Open in HTTP Client
生成测试用例

点击绿色箭头可以运行测试用例,控制台会输出结果。

保存和修改测试用例

在模块下新建一个api-test包用来存放测试用例,将生成的用例另外存放。

为了方便将来和网关集成测试,这里我们把测试主机地址在配置文件http-client.env.json 中配置。

{
  "dev": {
    "access_token": "",
    "gateway_host": "localhost:63010",
    "content_host": "localhost:63040",
    "system_host": "localhost:63110",
    "media_host": "localhost:63050",
    "search_host": "localhost:63080",
    "auth_host": "localhost:63070",
    "checkcode_host": "localhost:63075",
    "learning_host": "localhost:63020"
  }
}

因此将xc-content-api.http文件内容修改为

### 课程查询列表
POST http://{{content_host}}/content/course/list?pageNo=2&pageSize=10
Content-Type: application/json

{
  "auditStatus": "202002",
  "courseName": ""
}
前后端联调
前端环境准备

1. 安装node.js

推荐方法:Node.js下载安装及环境配置教程【超详细】_nodejs下载-CSDN博客

2. 启动前端项目

在前端项目根目录打开cmd命令行,输入npm run serve启动项目。

有访问地址说明启动成功(http://localhost:8601/)

安装系统管理服务

在访问 http://localhost:8601/ 时,会向http://localhost:8601/system/dictionary/all发起请求,即系统管理服务,因此需要启动该工程。

解决跨域问题

解决方式一:

在Controller的类上添加@CrossOrign,允许访问该控制器方法的请求跨域。

@Slf4j
@RestController
@CrossOrigin
public class DictionaryController  {

    @Autowired
    private DictionaryService  dictionaryService;

    @GetMapping("/dictionary/all")
    public List<Dictionary> queryAll() {
        return dictionaryService.queryAll();
    }

    @GetMapping("/dictionary/code/{code}")
    public Dictionary getByCode(@PathVariable String code) {
        return dictionaryService.getByCode(code);
    }
}

解决方式二:

根据资料所提供,配置跨域过滤器,在服务端给响应头添加 Access-Control-Allow-Origin:*。编写配置文件:

/**
 * @description 跨域过滤器
 * @author vv
 * @date 2024/2/16 17:08
 * @version 1.0
 */
 @Configuration
 public class GlobalCorsConfig {

  /**
   * 允许跨域调用的过滤器
   */
  @Bean
  public CorsFilter corsFilter() {
   CorsConfiguration config = new CorsConfiguration();
   //允许白名单域名进行跨域调用
   config.addAllowedOrigin("*");
   //允许跨越发送cookie
   config.setAllowCredentials(true);
   //放行全部原始头信息
   config.addAllowedHeader("*");
   //允许所有请求方法跨域调用
   config.addAllowedMethod("*");
   UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
   source.registerCorsConfiguration("/**", config);
   return new CorsFilter(source);
  }
 }

同源策略简述: 同源策略是浏览器的一种安全机制,从一个地址请求另一个地址,如果协议、主机、端口三者全部一致则不属于跨域,否则有一个不一致就是跨域请求。

举例:

从 http://locahost:8601  到   http://locahost:8602  由于端口不同,是跨域。

从 http://192.168.101.10:8601  到   http://192.168.101.11:8601  由于主机不同,是跨域。

从 http://192.168.101.10:8601  到   https://192.168.101.10:8601  由于协议不同,是跨域。

前后端联调

访问前端地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/392824.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SQL Extractor 数据库修复取证大师-数据库修复专家

SQL Extractor 数据库修复取证大师介绍 SQL Extractor 数据库修复取证大师 功能介绍&#xff1a;SQL Extractor数据库修复取证大师最新版本10.94软件特色:针对勒索病毒加密的SQL 数据库有特殊的修复算法,可匹配用友,金蝶数据库结构关系. 支持7.0、SQL2000、SQL2005、SQL2008、…

GPT-SoVITS-WebUI 克隆声音 macos搭建

强大的少样本语音转换与语音合成Web用户界面 macos运行参考 macos conda create -n GPTSoVits python3.9 conda activate GPTSoVits激活环境 conda activate GPTSoVits停用 conda deactivate mkdir GPTSoVits cd GPTSoVits git clone https://github.com/RVC-Boss/GPT-SoVITS…

这才是大学生该做的副业,别再痴迷于游戏了!

感谢大家一直以来的支持和关注&#xff0c;尤其是在我的上一个公众号被关闭后&#xff0c;仍然选择跟随我的老粉丝们&#xff0c;你们的支持是我继续前行的动力。为了回馈大家长期以来的陪伴&#xff0c;我决定分享一些实用的干货&#xff0c;这些都是我亲身实践并且取得成功的…

java生态环境评价Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java 生态环境评价管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysq…

【GPT-2】论文解读:Language Models are Unsupervised Multitask Learners

文章目录 介绍zero-shot learning 零样本学习 方法数据Input Representation 结果 论文&#xff1a;Language Models are Unsupervised Multitask Learners 作者&#xff1a;Alec Radford, Jeff Wu, Rewon Child, D. Luan, Dario Amodei, I. Sutskever 时间&#xff1a;2019 介…

数智化转型|两大电网、五大发电2024年重点工作路线图!

2024年1月&#xff0c;两大电网、五大发电集团陆续召开2024年工作会议&#xff0c;明确了2024年工作目标及重点路线图。从工作会议内容来看&#xff0c;不难发现&#xff0c;加快推动数智化转型&#xff0c;建设新型电力系统成为几大集团未来共同发展目标。会议内容如下&#x…

111期_C++_2024年1月份作业博客_选择题错题总结

一、野指针问题&#xff1a;在定义的时候没有初始化&#xff0c;就不能能用scanf 或 printf 二、一个变量出现在表达式的两边作为两个不同的操作数&#xff0c; 并且其中一个操作数带有&#xff0c;此时表达式出现歧义 三、两端出栈问题&#xff1a; 错因&#xff1a;未理解题…

【感知机】感知机(perceptron)学习算法的收敛性

感知机( perceptron )是二类分类的线性分类模型&#xff0c;其输入为实例的特征向量&#xff0c;输出为实例的类别&#xff0c;取1 和-1二值。感知机对应输入空间(特征空间)中将实例划分为正负两类的分离超平面&#xff0c;是一种判别模型。感知机是神经网络与支持向量机的基础…

如何理解DFMEA的输入与输出——SunFMEA软件

设计FMEA&#xff08;DFMEA&#xff09;是一种用于评估设计阶段产品潜在失效的风险的工具。它通过对设计要素的逐一分析&#xff0c;识别出可能导致产品失效的因素&#xff0c;为设计团队提供改进和优化的依据。本文SunFMEA软件将详细介绍设计FMEA的输入与输出&#xff0c;帮助…

PyCharm - Run Debug 程序安全执行步骤

PyCharm - Run & Debug 程序安全执行步骤 1. Run2. DebugReferences 1. Run right click -> Run ‘simulation_data_gene…’ or Ctrl Shift F10 2. Debug right click -> Debug ‘simulation_data_gene…’ 在一个 PyCharm 工程下&#xff0c;存在多个 Pytho…

Java 抽象容器类源码剖析

总体介绍 抽象容器类接口和具体容器类的关系如图所示&#xff0c;顶层包括Collection、List、Set、Queue、Deque和Map6个抽象容器类。 AbstractCollection&#xff1a;实现了Collection接口&#xff0c;被抽象类AbstractList、AbstractSet、AbstractQueue继承&#xff0c;Arra…

Vue+SpringBoot打造电子元器件管理系统

目录 一、摘要1.1 项目简介1.2 项目录屏 二、研究内容三、界面展示3.1 登录&注册&主页3.2 元器件单位模块3.3 元器件仓库模块3.4 元器件供应商模块3.5 元器件品类模块3.6 元器件明细模块3.7 元器件类型模块3.8 元器件采购模块3.9 元器件领用模块3.10 系统基础模块 四、…

通过Linux终端搭建基于HTTP隧道的文件传输系统

嘿&#xff0c;Linux小侠们&#xff0c;准备好挑战一项酷炫的任务了吗&#xff1f;今天我们要一起通过Linux终端搭建一个基于HTTP隧道的文件传输系统&#xff0c;让我们的文件在网络的海洋中畅游无阻&#xff01; 在开始之前&#xff0c;让我们先来想象一下这个场景&#xff1…

数字化转型导师坚鹏:政府数字化思维创新之道

政府数字化思维创新之道 ——政府数字化转型必须具备的6大数字化思维 课程背景&#xff1a; 很多政府存在以下问题&#xff1a; 不知道数字化转型如何改变思维模式&#xff1f; 不清楚需要建立什么样的数字化思维&#xff1f; 不知道如何开展数字化思维创新工作&#…

c++开发基础之保障多线程编程中的原子操作InterlockedIncrement和InterlockedDecrement用法详解

一、介绍 在多线程编程中&#xff0c;确保对共享变量进行原子操作是至关重要的。当多个线程同时访问和修改同一共享资源时&#xff0c;如果没有合适的同步机制&#xff0c;可能会导致数据竞争、内存一致性问题&#xff0c;甚至造成程序崩溃。为了解决这个问题&#xff0c;C提供…

数据分析(一) 理解数据

1. 描述性统计&#xff08;summary&#xff09; 对于一个新数据集&#xff0c;首先通过观察来熟悉它&#xff0c;可以打印数据相关信息来大致观察数据的常规特点&#xff0c;比如数据规模&#xff08;行数列数&#xff09;、数据类型、类别数量&#xff08;变量数目、取值范围…

【STM32 物联网】基础AT指令与基础Wifi功能AT指令

文章目录 前言一、基础AT指令1.1 测试AT启动1.2 重启模块1.3 查看版本信息1.4 进入深度睡眠模式1.5 开关回显1.6 恢复出场设置1.7 UART配置设置临时设置&#xff0c;不保存到Flash设置串口保存到Flash 1.8 设置sleep模式查询当前sleep模式设置当前sleep模式 二、基础Wifi功能AT…

Mac录屏保存在哪?让你快速找到它们!

在日常生活和工作中&#xff0c;我们经常需要录制电脑屏幕&#xff0c;以便进行演示、教学或者保存重要信息。然而&#xff0c;对于许多苹果用户来说&#xff0c;他们可能并不清楚mac录屏文件在哪。在本文中&#xff0c;我们将详细介绍如何在mac上进行录屏&#xff0c;以及录屏…

网络原理(IP篇)

IP IPv4&#xff08;Internet Protocol&#xff09;数据报首部格式版本首部长度可变部分区分服务总长度标识、标志、片偏移生存时间协议首部检验和源IP地址和目的IP地址 NAT 机制&#xff08;**N**etwork **A**ddress **T**ranslator&#xff09;网络地址转换NAT将数据的转发由…

政安晨:【完全零基础】认知人工智能(二)【超级简单】的【机器学习神经网络】—— 底层算法

如果小伙伴第一次看到这篇文章&#xff0c;可以先浏览一下我这个系列的上一篇文章&#xff1a; 政安晨&#xff1a;【完全零基础】认知人工智能&#xff08;一&#xff09;【超级简单】的【机器学习神经网络】 —— 预测机https://blog.csdn.net/snowdenkeke/article/details/…