У меня есть две локали установки Laravel, одна из которых используется как front веб-сайт, а другая как API , обе припаркованы с Валет . Моя проблема в том, что он не может общаться вместе, может быть, из-за Валета. Итак, я попробовал маленький тест ниже, который по какой-то причине не работает.
У меня есть этот код в routes/api.php
веб-сайта API :
Route::get('hello-api', function () {
return 'Hello Api!';
});
При открытии URL http://api.test/hello-api
в моем браузере я получаю сообщение "Hello Api!" как и ожидалось.
Затем, когда у меня есть код ниже в routes/web.php
фронта website:
Route::get('/hello-front', function () {
return 'foo';
});
При открытии URL http://front.test/hello-front
в моем браузере я получаю "foo", как и ожидалось.
Однако, если я заменю код в routes/web.php
сайта front на этот:
use GuzzleHttp\Client;
Route::get('/hello-api', function () {
// return 'hello';
$client = new Client();
$response = $client->request('GET', 'http://api.test/hello-api');
$statusCode = $response->getStatusCode();
$body = $response->getBody()->getContents();
return $statusCode;
return $body;
});
Тогда вместо ожидаемого "Hello Api" ! ", Я получаю следующее сообщение об ошибке:
{"status":"error","errors":["cURL error 6: Could not resolve: api.test (Domain name not found) (see https:\/\/curl.haxx.se\/libcurl\/c\/libcurl-errors.html)"]}
Что не так в моем коде или, может быть, в Valet?