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

使用RestAssured时出现400错误请求错误

勾长卿
2023-03-14

我在InteliJ/Java/RestAssured中收到一个400错误的POST请求,但在Postman中没有,所以谁能告诉我哪里出错了,请先告诉Postman

Endpoint: https://xxxxxx.auth.us-east-2.amazoncognito.com/oauth2/token

我的身体参数

client_id       anvalidid
client_secret   shhhhitisasecret    
scope           https://xxxxxx.auth.us-east-2.amazoncognito.com/read    
grant_type      client_credentials

现在,当我发布这篇文章时,我得到了200条回复和一个不错的新访问令牌。当我在Java/RestAssured中尝试同样的方法时,我得到一个400错误的请求错误,这就是我发布的内容。

Endpoint: https://xxxxxx.auth.us-east-2.amazoncognito.com/oauth2/token

身体

{
"client_id":"anvalidid",
"client_secret":"shhhhitisasecret",
"scope":"https://xxxxxx.auth.us-east-2.amazoncognito.com/read",
"grant_type":"client_credentials"
}

Header: "Content-Type", "application/x-www-form-urlencoded"

每次运行这个程序,我都会收到HTTP/1.1400错误的请求错误,我不知道为什么。谁能看出我哪里做错了吗。提前谢谢。

下面是返回的标题

Date=Thu, 03 Jun 2021 10:45:55 GMT
Content-Type=application/json;charset=UTF-8
Transfer-Encoding=chunked
Connection=keep-alive
Set-Cookie=XSRF-TOKEN=093edd16-255e-42ad-9f11-be84cd56c5dc; Path=/; Secure; HttpOnly; SameSite=Lax
x-amz-cognito-request-id=4c91be06-9d0b-47d9-997e-f292eee61650
X-Application-Context=application:prod:8443
X-Content-Type-Options=nosniff
X-XSS-Protection=1; mode=block
Cache-Control=no-cache, no-store, max-age=0, must-revalidate
Pragma=no-cache
Expires=0
Strict-Transport-Security=max-age=31536000 ; includeSubDomains
X-Frame-Options=DENY
Server=Server

还有饼干

XSRF-TOKEN=093edd16-255e-42ad-9f11-be84cd56c5dc;Path=/;Secure;HttpOnly

共有1个答案

冀子石
2023-03-14

嗯,我做了一些调查,并设法找到了一个解决方案,如下所示

Response response = RestAssured
        .given()
        .header("Content-Type", "application/x-www-form-urlencoded")
        .formParam("client_id", "clientId")
        .formParam("client_secret", "clientSecret")
        .formParam("scope", "https://scope.etc")
        .formParam("grant_type", "client_credentials")
        .request()
        .post(settingsRepository.getSetting("cognito.url.base"));

生活和学习

 类似资料:
  • 我正在使用实现一个联系人应用程序。现在,我正试图通过发送以下格式的put请求来更新联系人 我将XML作为字符串发送,作为请求的主体。这是我的xmlString(请求主体) 我写了下面的代码来发送更新联系人的PUT请求。 当我试图在中发送请求时,联系人更新成功。但是当我试图运行上面的程序时,我得到了 400错误请求错误 我不知道我哪里出错了。任何帮助都将不胜感激!

  • 我正在为一个项目使用Hackerrank API。查看官方文档,点击这里! 在他们的网站上有一个使用UNIREST的例子, 由于我使用的是axios,所以我将其转换为类似的axios代码,如下所示: 我希望这只适用于示例中所示的示例,但它给我带来了以下错误: 请求失败,状态代码为400 错误:请求失败,状态代码为400 在createError(createError.js:16) 在sett(s

  • 我有一个基于Spring Web model view controller(MVC)框架的项目。Spring Web模型-视图-控制器(MVC)框架的版本是3.2.8 我有这个控制器 这个URL一切正常:

  • 目前从Angular JS controller中,我试图将JSON数据发送到后端服务。但是我有400个错误的请求错误。 在Controller中,我试图通过http服务发送数据,如下所示:

  • 我在Heroku上托管了一个Springboot应用程序。构建和部署工作得非常好。然而,每当我想访问该方法时,我都会看到这个错误<代码>出现意外错误(类型=错误请求,状态=400) 如果我使用loclhost,但使用Heroku的应用程序时抛出错误,那么它在Postman上运行得非常好。 这是控制器的样子。我猜这就是问题的来源。 . 你认为我能做些什么让api在Heroku上工作?

  • Iam使用LIferay 7.1.1 CE与Tomcat-9.0.10捆绑 登录到控制面板后,当我执行任何操作时,如保存页面、发布网页内容、添加模板...等等,我得到400坏请求错误间歇。有时,相同的操作可以正常工作,不会出现任何问题。当我使用localhost:8080访问同一个站点时,这个问题没有发生,所有操作都工作正常。我也有我的网站的https加密网址。 服务器设置如下所示, 咕噜咕噜 -