Кажется, все в порядке, правый ключ - grant_type
, а не grant-type
. Чтобы заставить это работать, откройте URL-адрес, который вы разместили в разделе комментариев, и войдите в систему с учетными данными. После входа в систему с учетными данными скопируйте URL-адрес и вставьте его в код ниже и просто запустите код
Если вам нужно автоматизировать вышеуказанное, используйте selenium
String url = "https://rahulshettyacademy.com/getCourse.php?code=4%2F1wG8uUh3B4vyGubOoLuW9DQIT7tLhe9CGJog4X7AAoQC94szQuf9WDkdX1V-wVqF7yAlsS9xZdcRJ5eROkrjLmc&scope=email+openid+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&authuser=0&prompt=none#";
String partialcode = url.split("code=")[1];
String code = partialcode.split("&scope")[0];
String accessTokenResponse = given().urlEncodingEnabled(false)
.queryParams("code", code)
.queryParams("client_id", "692183103107-p0m7ent2hk7suguv4vq22hjcfhcr43pj.apps.googleusercontent.com")
.queryParams("client_secret", "erZOWM9g3UtwNRj340YYaK_W")
.queryParams("redirect_uri", "https://rahulshettyacademy.com/getCourse.php")
.queryParams("grant_type", "authorization_code").when()
.post("https://www.googleapis.com/oauth2/v4/token").then().extract().asString();
JsonPath jp = new JsonPath(accessTokenResponse);
String access_token = jp.getString("access_token");
String response = given().queryParam("access_token", access_token).when()
.get("https://rahulshettyacademy.com/getCourse.php").asString();
System.out.println(response);
Ответ:
{
"instructor": "RahulShetty",
"url": "rahulshettycademy.com",
"services": "projectSupport",
"expertise": "Automation",
"courses": {
"webAutomation": [{
"courseTitle": "Selenium Webdriver Java",
"price": "50"
}, {
"courseTitle": "Cypress",
"price": "40"
},
{
"courseTitle": "Protractor",
"price": "40"
}
],
"api": [{
"courseTitle": "Rest Assured Automation using Java",
"price": "50"
},
{
"courseTitle": "SoapUI Webservices testing",
"price": "40"
}
],
"mobile": [{
"courseTitle": "Appium-Mobile Automation using Java",
"price": "50"
}]
},
"linkedIn": "https://www.linkedin.com/in/rahul-shetty-trainer/"
}