从控制器调用外部 API 函数,LARAVEL 4

2022-01-08 00:00:00 php laravel laravel-4

我在 laravel 4 上构建了一个 API,它返回 json 结果.对于 API,我创建了一个文件夹.现在我为 Web 应用程序创建了另一个外部项目,我想要的是从 laravel 应用程序控制器访问 API 函数.更清楚地说,我如何从 laravel 控制器发出外部 API 请求?

I build an API on laravel 4, and it returns json results. For the API, I created one folder. Now i created another external project for the web application and what I want is to access the API functions from the laravel app controller. To be more clear, how can i make external API request from laravel controller?

推荐答案

你可以使用 Guzzle:

安装它:

composer require guzzle/guzzle ~3.0

创建一个设置基本 URL 的客户端:

Create a client setting the base URL:

$client = new GuzzleServiceClient('http://api.github.com/users/');

得到你的回应:

$response = $client->get("users/$username")->send();

并显示它:

dd($response);

但是,如果您尝试遵循 MVC 模式,则不应直接在控制器中执行此操作,因此请创建一个服务类,从您的控制器或存储库中调用,为您完成此工作.

But if you are trying to follow the MVC pattern, you should not do this directly in your controller, so create a service class, you call from your controller or your repositories, to do this work for you.

相关文章