Я выполнил шаги этого сообщения , чтобы управлять входом в Odoo с PHP. Ответ от XML -RP C в порядке, и я получаю session_id . $ response выглядит так:
Array
(
[jsonrpc] => 2.0
[result] => Array
(
[session_id] => 64c429e748142d0fbcecfe71f6701bf416b9efd4
...
)
)
Но установка повара ie с использованием этого session_id не работает, я все еще не вошел в Odoo:
setcookie('session_id', $response['result']['session_id']);
Я также безуспешно пытался использовать Javascript:
echo '<script>document.cookie="session_id=' . $response['result']['session_id'] . '";</script>';
Что не так с моими файлами cookie?
ОБНОВЛЕНИЕ
Теперь я переместил код, чтобы установить cook ie непосредственно в домен Odoo, я не могу запустить PHP там, поэтому я установил cook ie через Javascript call loginbycook ie? Id = xxx :
(function() {
const params = new URLSearchParams(location.search);
const id = params.get('id');
if (id) {
console.log("set cookie: session_id="+id);
document.cookie='session_id='+id;
console.log(document.cookie);
} })();
Я успешно получил идентификатор, но при печати document.cookie
его не существует. Вместо этого вкладка Inspectors Cookies показывает повар ie с другим session_id
и с параметром HttpOnly=true
. Таким образом, кажется, что Odoo перезаписывает его. Все, что я могу сделать, чтобы повар ie упорствовал?