当前位置: 首页 > 知识库问答 >
问题:

Spring靴。如何测试http协议版本?

黄丰
2023-03-14

我在我的应用程序中使用Spring Boot 2.6.0Spring MVC。我想将控制器协议从HTTP/1.1版本切换到HTTP/2。首先,我已经为此编写了下一个集成测试:

java prettyprint-override">@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class IntegrationTest {

    @Autowired
    private TestRestTemplate template;

    @Test
    public void canGet() {
        ResponseEntity<JsonResponse> entity = template.getForEntity("/foo", JsonResponse.class);
        assertEquals(HttpStatus.OK, entity.getStatusCode());
        assertNotNull(entity.getBody());
        //todo: assertEquals("http/2", entity.getProtocol());
        //todo: assertEquals("http/1.1", entity.getProtocol())
    }
}

但是entity.getProtocol()方法不存在,而且我找不到任何其他测试协议版本的方法。有人知道如何在spring boot应用程序中正确测试协议版本吗?

共有1个答案

梁丘高朗
2023-03-14

您可以将OkHttp与Spring一起使用,正如下面的回答:Springboot 2:有什么方法可以将TestRestTemplate配置为只使用HTTP/2协议吗?

 类似资料:
  • 问题内容: 如何修改参数以发送请求,如下所示: “获取www.sample.com HTTP / 1.0” “获取www.sample.com HTTP / 1.1” 问题答案: 请求不支持发送HTTP / 1.0消息。很难理解为什么需要这样做:HTTP / 1.1最初是在1999年6月发布的RFC 2616中指定的。因此,HTTP / 1.0已经过时了16年以上:现代工具在很大程度上不支持HTT

  • HTTP的特性 HTTP构建于TCP/IP协议之上,默认端口号是80 HTTP是无连接无状态的 HTTP报文 请求报文 HTTP 协议是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行、请求头、消息主体。类似于下面这样: <method> <request-URL> <version> <headers> <entity-body>

  • 我有一个cucumber项目,它使用spring boot和testng。 这里是主要课程 我没有测试。xml文件,因为测试是通过spring boot启动的。出于某些原因,我想优先考虑测试,我发现我可以使用QAF(https://qmetry.github.io/qaf/latest/scenario-meta-data.html#pre-为bdd定义的元数据)。我试着用它,但没用。 以下是我所

  • 我正在向我使用httplib2拥有的REST服务发出HTTPS GET请求,但我们得到了错误: 所有其他客户端都运行良好(浏览器、Java客户端等...),只有一个小例外,PHP curl需要设置为使用SSL v3。 我已经搜索了周围,它似乎确实是一个关于SSL版本的错误,但我似乎找不到一种方法来改变它在http://www. ttplib2.除了改变源代码中的以下行之外,还有什么方法可以解决这个

  • 如果在Spring Boot应用程序中使用,并使用协议,它将按预期工作,因为Spring Boot程序注册。例如。 复制的步骤: 1)创建Spring Boot Starter项目(例如。仅使用初学者Web)。 2)在中添加文件 在实际用例中,我不能更改,因为它来自第三方库。 尝试将复制到中,以测试错误是否是由缺少资源引起的-没有成功。

  • 一面中,如果有笔试,考HTTP协议的可能性较大。 前言 一面要讲的内容: HTTP协议的主要特点 HTTP报文的组成部分 HTTP方法 get 和 post的区别 HTTP状态码 什么是持久连接 什么是管线化 二面要讲的内容; 缓存 CSRF攻击 HTTP协议的主要特点 简单快速 灵活 无连接 无状态 通常我们要答出以上四个内容。如果实在记不住,一定要记得后面的两个:无连接、无状态。 我们分别来解