3CX Войти через PHP
Я пытаюсь войти в 3cx AdminPanel через PHP.
Почтовый адрес, где я должен передать учетные данные
noonecares.com:5001/api/login Если я войду через браузер, запрос будет иметь следующие заголовки:
- Принять: приложение / JSON, текст / обычный, /
- Content-Type: применение / JSON; кодировка =UTF-8
- Длина контента: # CONTENT_LENGTH #
- Accept-Encoding: gzip, deflate, br
- Происхождение: https://noonecares.com:5001/
- Реферер: https://noonecares.com/
- X-3CX-Version: 15.5.1694.0
Содержимое * (запрос полезной нагрузки)*: {Имя пользователя: "xxxxx", Пароль: "xxxxxx"}
В Php я тоже использую этот заголовок
$opts = [
"http" => [
"method" => "POST",
"header" =>
"Accept:application/json, text/plain, */*\n\r" .
"Accept-Encoding:gzip, deflate, br\n\r" .
"Content-Type:application/json;charset=UTF-8\n\r" .
"Origin:https://noonecares.com:5001\n\r" .
"Referer:https://noonecares.com:5001\n\r" .
"Content-Length:" . strlen($data) . "\n\r",
"content" => json_encode(["Username" => "xxxxx","Password" => "xxxxxx"]),
]
];
И я пытаюсь отправить запрос со следующим кодом:
$result = file_get_contents("noonecares.com:5001/api/login", false, stream_context_create($opts));
Но я всегда получаю "BAD REQUEST" в качестве ответа, и после нескольких попыток я получаю тайм-аут
привет Макс
1 ответ
Может быть, вы можете попробовать это:
$opts = [
"https" => [
вместо
$opts = [
"http" => [
Вы также можете попробовать это
$result = file_get_contents("https://noonecares.com:5001/api/login", false, stream_context_create($opts));