【问题标题】:How to make http request to external service in Laravel5?如何在 Laravel5 中向外部服务发出 http 请求?
【发布时间】:2015-03-10 10:31:26
【问题描述】:

我在 Laravel5 中有一个应用程序。我需要的是能够调用外部 api,然后相应地处理来自 api 的响应。

我将得到的响应是一个 xml 标记的形式,如下所示,TrueFalse

<statusCheck success="true"/>

有人能指出我如何调用外部 api 的正确方向吗?

注意 请注意,我想在controllermodel 内提出此请求。

【问题讨论】:

标签: api httprequest laravel-5


【解决方案1】:

使用GuzzleHttp 发送HTTP 请求。

通过composer下载包:

"guzzlehttp/guzzle": "5.0.*@dev"

查看http://guzzle.readthedocs.org/en/latest/上的文档

【讨论】:

  • 我现在已经下载了这个包,问题是能够在 Laravel5 中公开这个包的最好方法是什么。我不想在 Laravel5 中使用 require 来访问库
  • 在控制器类声明的顶部使用类引用。然后创建客户端类的对象。就是这样。
  • 使用 GuzzleHttp\Client;
【解决方案2】:
$client = new GuzzleHttp\Client(['base_uri' => 'https://foo.com/api/']);
$response = $client->request('GET', 'test');
$response = $client->request('GET', '/root');

return response()->download(public_path($response));

我们必须使用 Guzzlehttp 客户端插件。

【讨论】:

    猜你喜欢
    • 2015-10-23
    • 1970-01-01
    • 1970-01-01
    • 2014-04-16
    • 2012-02-22
    • 1970-01-01
    • 2019-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多