1st извлекает sessionToken, который передается второму вызову как параметр.
Второй вызов имеет перенаправления, но должен закончиться на странице, где я могу получить ответ SAML.
Ниже приведен код, и я считаю, что проблема в том, как Java обрабатывает параметр. перенаправления (единственное, что я могу придумать), но я не знаю, как решить проблему. (PS Я также попробовал пару других Java-библиотек HTTP с той же проблемой)
Есть идеи о том, что я здесь делаю неправильно?
Код: Выделить всё
client = HttpClient.newBuilder()
.version(HttpClient.Version.HTTP_1_1)
.followRedirects(Redirect.NORMAL)
.build();
ApiURL = "https://company.okta.com/api/v1/authn";
jsonBody = new JSONObject("{\"username\": \"" + userNameString + "\",\"password\": \"" + userPasswordString + "\",\"options\": {\"multiOptionalFactorEnroll\": false,\"warnBeforePasswordExpired\": false}}");
request = HttpRequest.newBuilder()
.uri(URI.create(ApiURL))
.header("accept", "*/*")
.header("content-type", "application/json")
.method("POST", BodyPublishers.ofString(jsonBody.toString()))
.build();
response = client.send(request, BodyHandlers.ofString());
String cookieHeader = "";
if (response.statusCode() == 200) {
jsonBody = new JSONObject(response.body());
sessionToken = jsonBody.getString("sessionToken");
}
ApiURL = "https://company.okta.com/home/company_application_1/0oa2v2ll39RRbl5ae1t7/aln2v2sgr83LTglE71t7";
fullUrl = String.format("%s?sessionToken=%s", ApiURL, sessionToken);
request = HttpRequest.newBuilder()
.uri(URI.create(fullUrl))
.header("accept", "*/*")
.method("POST", BodyPublishers.noBody())
.build();
response = client.send(request, BodyHandlers.ofString());
Это отлично работает в почтальоне.
Я пытался вручную кодировать перенаправления с помощью те же результаты (происходит 2 перенаправления)
Я попробовал пару других http-библиотек Java с той же проблемой
Я считаю, что проблема это то, как Java обрабатывает перенаправления (единственное, что я могу придумать), но я не знаю, как решить эту проблему.
Подробнее здесь: https://stackoverflow.com/questions/783 ... the-proble