Содержимое Ответа должно быть строкой или объектом, реализующим __toString (), «логический» - PullRequest
0 голосов
/ 12 октября 2018

У меня есть API, я хочу получить детали этого API, используя file_get_contents, используя код laravel.Но я получаю эту ошибку "Содержимое ответа должно быть строкой или объектом, реализующим __toString ()," логическое "задано."Вот мой код,

$context = stream_context_create(array(
    'http' => array(
        'header'  => "Authorization: Basic " . base64_encode("$username:$password") 
    )
));

$ss =  @file_get_contents($url, false, $context);
return $ss;

Как я могу это исправить?

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

В вашем сообщении об ошибке говорится, что вы возвращаете логическое значение, что означает, что ваш вызов на file_get_contents() возвращает false, что означает, что вызов не выполнен.

Вам нужно что-то вроде:

$ss =  @file_get_contents($url, false, $context);

if ($ss === false) {
    return 'file_get_contents failed.';
}

return $ss;

Если вы хотите узнать, почему произошел сбой file_get_contents(), вам необходимо удалить знак @, чтобы прекратить подавление ошибки.

0 голосов
/ 12 октября 2018

вы должны вернуть строку:

if($ss)
   return 'success';
...