我正在使用 Laravel 构建一个应用程序来为 android 应用程序提供一些 API,并且我正在使用来自另一台服务器(带有另一个 URL)的一些外部 API。我想为来自 android 端但在我自己的 URL 中的外部 API 请求制作代理或隧道之类的东西。
例如:
android 想要请求 externalUrl.com/api/objects 但我希望他对此提出要求 myDOmain.com/api/x/objects 并获得与第一个链接返回的完全相同的响应,没有任何变化。
并且有不止一个外部 API,我不想为每个 API 编写单独的代码。
需要这样的东西:
Route::any('/x/{somewhere}', function($request){
return [$request, externalUrl.com/api/{somewhere}]->response;
})
我不是在要求 http 请求库!我想将请求重定向到另一个域并返回其请求。
最佳答案
最好的选择是安装 Guzzle。 https://github.com/guzzle/guzzle
使用它真的很简单。
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'externalUrl.com/api/{somewhere}');
return $response->getBody();
关于php - Laravel - 将请求重定向到外部 url 并将其响应作为响应返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57180406/