Некоторое время я боролся с этим, поэтому любая помощь действительно приветствуется ...
У меня есть отчеты Pentaho, загруженные на сервер Pentaho.Эти отчеты вызываются через Iframe.
Я пытаюсь сделать так, чтобы пользователь проходил аутентификацию только один раз, чтобы он мог запускать другие отчеты без повторной аутентификации.Для этого я использую аутентификацию на основе файлов cookie Pentaho, как описано здесь: https://help.pentaho.com/Documentation/8.0/Developer_Center/REST_API
Мои проблемы: 1) Я написал небольшой скрипт php, который отправляет запрос POST в / pentaho / j_spring_security_check.Скрипты не возвращают никаких ошибок, но не перенаправляют меня на домашнюю страницу, как ожидалось.
<?php
$data = array("j_username"=>"admin", "j_password"=>"password",
"locale"=>"en_US");
$string = http_build_query($data);
echo $string;
$ch =
curl_init("http://localhost:8080/pentaho/j_spring_security_check");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $string);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo $ch;
$return = curl_exec($ch);
echo $return;
if (curl_errno($ch)) {
print curl_error($ch);
}
curl_close($ch);
?>
2) Я пытался набирать текст прямо в браузере "http://localhost:8080/pentaho/j_spring_security_check?j_username=admin&j_password=admin", Я получаю" login_error =1 ", в то время как логины и пароли верны (ожидаемое поведение должно быть перенаправлено на домашнюю страницу).
Я впервые использую REST API, поэтому я могу ошибаться.
Большое спасибо