首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Magento2.2中调用外部API?

如何在Magento2.2中调用外部API?
EN

Stack Overflow用户
提问于 2019-02-25 08:14:48
回答 1查看 1.6K关注 0票数 1

我是Magento 2的新手,在下面的查询中我需要帮助。

如何在页面加载或单击Magento2.2中的按钮时调用外部API?

我们是否需要为同样的目标创建一个观察者,还是有更好的方法来做到这一点。将感谢任何链接是为逐步提供的过程。

EN

回答 1

Stack Overflow用户

发布于 2019-02-28 01:15:37

首先,我们需要知道如何调用基本API。下面是关于GET的示例:

代码语言:javascript
复制
$externalAPI = 'https://your/external/api_url'

$ch = curl_init($externalAPI);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
 
$result = curl_exec($ch);
 
var_dump($result);

在Magento方面,我们可以使用\Magento\Framework\HTTP\Client\Curl类:

代码语言:javascript
复制
$apiUrl = '';
$this->curl->addHeader('Content-Type', 'application/json');
$this->curl->get($apiUrl);
$body = $this->curl->getBody();
$httpCode = $this->curl->getStatus();
//Quick decoding body
$dataResponse = \Zend_Json::decode($body);

如何在页面加载或单击Magento2.2中的按钮时调用外部API? 我们是否需要为同样的目标创建一个观察者,还是有更好的方法来做到这一点。

这取决于需求。您什么时候需要连接到API?还是直接把它展示在前面?

一旦你知道时间(或地点?)您需要调用外部API。您可以选择插件、观察者或Ajax解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54861986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档