Laravel前端网站和Laravel API之间的通信,均由代客泊车

Laravel前端网站和Laravel API之间的通信,均由代客泊车,laravel,api,valet,Laravel,Api,Valet,我有两个现场安装的Laravel,一个用作前台网站,另一个用作API,两者都与代客泊车。我的问题是,它似乎无法一起沟通,可能是因为代客泊车。因此,我尝试了一个小测试,由于某种原因,它在下面不起作用 步骤1 我在api网站的routes/api.php中有这段代码: Route::get('hello-api', function () { return 'Hello Api!'; }); Route::get('/hello-front', function () { r

我有两个现场安装的Laravel,一个用作前台网站,另一个用作API,两者都与代客泊车。我的问题是,它似乎无法一起沟通,可能是因为代客泊车。因此,我尝试了一个小测试,由于某种原因,它在下面不起作用

  • 步骤1
我在api网站的
routes/api.php
中有这段代码:

Route::get('hello-api', function () {
    return 'Hello Api!';
});
Route::get('/hello-front', function () {
     return 'foo';
});
打开URL时
http://api.test/hello-api
在我的浏览器中,我得到了预期的“Hello Api!”

  • 步骤2
然后,当我在front网站的
routes/web.php
中有以下代码时:

Route::get('hello-api', function () {
    return 'Hello Api!';
});
Route::get('/hello-front', function () {
     return 'foo';
});
打开URL时
http://front.test/hello-front
在我的浏览器中,我得到了预期的“foo”

  • 步骤3
但是,如果我将front网站的
routes/web.php
中的代码替换为以下代码:

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)"]}

我的代码或代客泊车有什么问题?

我最终通过将此添加到
/etc/hosts
,解决了这个问题:

127.0.0.1       api.test

但是我很想看看它是否可以在《代客泊车》中修复。我最后将它添加到了《代码》中。

127.0.0.1       api.test
但是我想看看它是否能在代客泊车中修好