我正在尝试运行POST方法以使用REST Assured Code获取访问令牌。但它返回404错误。我的代码如下。 POSTMAN配置如下同样尝试使用Rest Assured
进行复制Method : POST
Authorization tab:
Type : Basic Auth
UserName : ABCD
Passsowrd : Test@1234
Body Tab :
Selecting "application/x-www-form-urlencode" Radio Button
Key : grant_type Value : Client_Credentials
Key : Scope value : ABCDAPI
given().auth().basic("Username Here","Password type here")
.header("Authorization", "Basic T1VUUkVBQ0hfQVBJX0NMSUVOVDpIWmRwREwydkR5UE5iQmtvWEdxSkFpK1Qxa08yWSszNndxQXhoYTVXUWhZPQ==n")
.header("Content-Type","application/x-www-form-urlencoded")
.contentType("application/x-www-form-urlencoded")
.body("[{\"grant_type\":\"client_credentials\"}]")
.body("[{\"scope\":\"ABCDpi\"}]").when()
.post("https://ABCD.KLM.id.XYZ-Cloud.net/oauth2/access_token?realm=PQR")
.then().contentType("").statusCode(200);
我还附上Postman工作的屏幕截图enter image description here
答案 0 :(得分:1)
在尝试以下代码之前,请给自己一些时间来查看here。
同样application/x-www-form-urlencoded
将其POST变量存储为正文中的键值对。
given().auth().basic(username, password)
.header("Content-Type","application/x-www-form-urlencoded")
.formParam("grant_type", "client_credentials")
.formParam("scope", "ABCDpi")
.post("https://ABCD.KLM.id.XYZ-Cloud.net/oauth2/access_token?realm=PQR")
.then().contentType("").statusCode(200);
答案 1 :(得分:0)
我看到了您的代码问题以及像您这样的问题。而且我认为找到一种解决我们问题的方法。 如果更改以下几行,则可能会起作用:
.body("[{\"grant_type\":\"client_credentials\"}]")
.body("[{\"scope\":\"ABCDpi\"}]").when()
为此:
.body("grant_type=client_credentials&scope=ABCDpi")
我希望能有所帮助。