Я пытаюсь реализовать архитектуру MicroService с использованием Lumen и Laravel
Я использую laravel 5.4 в качестве ApiGetway и использую Lumen 5.4 в качестве микросервиса
Дело в том, что я использую GuzzleHTTP версии 6.3 в своем проекте laravel, пытаюсь использовать API microService, но получаю 500 Internal Server Error
Я пытаюсь это в моем местном хосте
Вот как я делаю запросы:
public function get_posts(){
try {
$client = new Client(); //GuzzleHttp\Client
$res = $client->request('GET', 'http://localhost/micro/posts_micro_service/public/posts');
if($res->getStatusCode() == "200"){
echo $res->getBody();
}else{
return response()->json(['status',"error"]);
}
} catch (ClientException $e) {
echo Psr7\str($e->getRequest());
echo Psr7\str($e->getResponse());
}
}
Я получаю эту ошибку:
(1/1) ServerException
Server error: `GET http://localhost/micro/posts_micro_service/public/posts` resulted in a `500 Internal Server Error` response:
<!DOCTYPE html>
<html>
<head>
<meta name="robots" content="noindex,nofollow" />
<style>
(truncated...)
in RequestException.php (line 113)
Проблема заключалась в том, что Lumen и Laravel используют одну и ту же машину и совместно используют одну и ту же среду, поэтому, когда я выполнял вызов переменных среды, они были переопределены.
Других решений пока нет …