您需要在某个时间点为项目开发中的独特需求创建自定义API,这就是我们在本教程的整个过程中都会介绍的内容。 在我们的自定义API模块中,我们将获取商店中所有可用产品的列表,并且它将是OpenCart中REST标准要求的JSON编码输出。
我假设您熟悉OpenCart中的基本模块开发过程。 这是一篇不错的文章,提供了对该主题的全面了解,以防万一您想跳过它。 另一个要点:我正在使用OpenCart的最新版本,即撰写本文时的最新版本为2.1.0.2,并且您也应该这样做以确保核心API的兼容性。
在不浪费您大量时间的情况下,我将直接研究实用的内容,这就是下一部分的全部内容。
文件设置概览
让我们看一下所需设置所需的文件列表。
-
catalog/controller/api/custom.php
:这是一个控制器文件,我们大多数应用程序逻辑都位于该文件中。 -
catalog/language/en-gb/api/custom.php
:这是一个保存语言变量的语言文件。 -
common.php
:此文件包含可重复使用目的的通用代码。 -
login.php
:这是一个文件,演示如何使用REST API登录到商店。 -
products.php
:该文件演示了如何使用我们的自定义API模块获取产品。
因此,这就是设置我们的自定义API模块并使用PHP CURL库进行测试所需要的。
我们将从控制器文件开始,继续创建具有以下内容的文件catalog/controller/api/custom.php
。
<?php
// catalog/controller/api/custom.php
class ControllerApiCustom extends Controller {
public function products() {
$this->load->language('api/custom');
$json = array();
if (!isset($this->session->data['api_id'])) {
$json['error']['warni