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

POST请求在postman中获得307,无法在Restassed中复制

王才英
2023-03-14

我有一个POST请求,我首先在邮递员中尝试过,我想在重定向之前捕获状态代码。在邮递员中,我得到了307(我设置了设置,这样它就不会跟随重定向)。

邮递员

但当我尝试使用Restasured时,它仍然被重定向,所以我得到了200个状态码,而不是307。

使用302状态码的GET请求尝试了相同的方法,并且该方法有效。

public void postDataBeforeLogin() {
    
    //post data before login
    Response response = RestAssured.given().redirects().follow(false).post("/data");
    
    assertEquals(response.getStatusCode(), 307); 

}

我读过一篇文章/帖子,内容是关于Restassed没有重定向帖子请求,但那是3年前的事,所以我不确定情况是否仍然如此。

有人能帮忙/澄清一下吗?

帮助将不胜感激,谢谢!

共有1个答案

石超
2023-03-14

RestAssuredConfig将满足您的要求,如下所示:

given().config(RestAssured.config().redirect(redirectConfig().followRedirects(false))).

就你而言:

import static io.restassured.config.RedirectConfig.redirectConfig;

Response response = RestAssured.given()
                    .config(RestAssured.config().redirect(redirectConfig().followRedirects(false)))
                    .post("/data");

查看更多:REST保证维基

建议静态导入方法,请参见

 类似资料:
  • 我想使用带有mysql的npm包knex将myback-end文件夹与localhost上的mysql数据库连接起来。 步骤: 在后端项目文件夹(包含knex和mysql)中运行nodemon server.js文件 在《邮差》中,我喜欢: 打开“邮递员”,选择“Post Requst”,复制URL:localhost:3000/myPath“,复制到正文: {“电子邮件”:“me@gmail.c

  • 我有一个简单的helper来发送post请求并返回结果,它应该与自定义构建的API进行通信,所有的工作都离不开一个特定的URL。 我的helper方法如下所示(使用RestSharp) 我要求如下: 非常感谢任何帮助。

  • 我在桌面上安装了邮递员的本机应用程序(邮递员版本5.5.0)。现在,当我发送简单的肥皂请求时,将显示“无法获得任何响应”消息。当我在以前的邮递员chrome扩展中发送相同的请求时,我得到了预期的响应。请帮忙。提前致谢。

  • 我向REST API发出一个上传文件的POST请求。在《邮差》里一切都很好。我添加了基本授权和从服务器获得的自定义CSRF(XSRF)令牌。 我想做同样的使用卷曲。我从邮递员那里抄来的代码,似乎行不通。我认为该错误与CSRF有关,因为如果我关闭服务器上的CSRF,并且在没有CSRF令牌的情况下进行相同的cURL调用,那么一切工作都很好。 下面是更多的细节:这是Postman给出的cURL命令: 这

  • 我有一个python代码,用来创建一个json文件,作为post请求中的数据。 变量如下所示: 当我打印上述变量时,我得到以下输出: 当我在我的邮递员请求上使用以下输出时,它会像我期望的那样工作。但是当我使用相同的变量发送带有以下函数的超文本传输协议请求时,我得到了一个错误。 为什么我的输出在postman上工作,而不是在python本身?

  • 我正在使用嵌入Java的netty 4.1,并尝试从管道中的客户端POST请求中检索数据。我在网上找到了几种选择,但都没用。。。 也许有人对此有一个有用的想法。 向所有提供帮助的人致以问候和感谢。 管道: 处理程序: