Я пытаюсь использовать file_get_contents для «отправки» URL-адреса и получения токена аутентификации. Проблема, с которой я сталкиваюсь, заключается в том, что она возвращает ошибку.Разместить запрос с файлом_get_content не работает
Message: file_get_contents(something): failed to open stream: HTTP request failed! HTTP/1.1 411 Length Required.
Я не уверен, что является причиной этого, но нужна помощь. Вот функция.
public function ForToken(){
$username = 'gettoken';
$password = 'something';
$url = 'https://something.com';
$context = stream_context_create(array (
'http' => array (
'header' => 'Authorization: Basic ' . base64_encode("$username:$password"),
'method' => 'POST'
)
));
$token = file_get_contents($url, false, $context);
if(token){
var_dump($token);
}else{
return $resultArray['result'] = 'getting token failed';
}
}
Я попробовал его с POSTMAN, и она работает, вот только проблема, которую я имею, что почему разве он работает с file_get_contents.
Нечто должно быть испорчено заголовком '$ context' и' Content-Length'. –
@ patryk-uszynski Как добавить Content-Length? –
'file_get_content' имеет некоторые ограничения. Попробуйте с CURL –