# 简单介绍

  • 本文档主要是针对A3Mall B2C商业版程序所编写。
  • 前台H5/微信公众号、微信小程序、APP(Android、IOS)在多终端、跨平台时采用 REST API 进行数据统一请求。
  • 本文档编写时A3Mall B2C商业版程序版本号 v1.3

# 公共请求

前台采用get/post/form等方式提交数据

# 数据返回

在客户端每次发送调用API请求,无论成功是否成功,后端都会返回数据,数据格式统一为json。

参数名 类型 描述
status integer 状态
info string 请求状态说明
data array、json、string 返回请求的数据

后端返回

    return $this->returnAjax("ok",1,[
        // ...
    ]);

返回的数据格式

    {
        "status":1,
        "info":"",
        "data":[]
    }

# 注意事项

  • 需要注意的是所有的请求和响应数据皆为utf-8格式编码

# 权限说明

在请求api时,权限验证使用中间件拦截或过滤应用的HTTP请求,并进行必要的业务处理。

mall/middleware/VerifyToken.php 权限验证中间件文件

路由中间件对照route.php查看权限的设置

app/api/route/route.php

    // 公共请求
    Route::group(function() {
        // ...
    });
    
    // 添加跨域请求支持中间件
    Route::group(function(){
        // ...
    })->middleware(AllowOrigin::class);
    
    // 添加跨域请求支持中间件、并且需要验证用户是否己是登录状态
    Route::group(function(){
        // ...
    })->middleware(AllowOrigin::class)->middleware(VerifyToken::class);
    
    // 如果在没有匹配到所有的路由规则后执行返回 404
    Route::miss(function(){
        // ...
    });
参数 类型 描述
info string 返回的信息说明
status string 状态码
  • 用户如果未登录返回数据格式
    {
        "info": "",
        "status": ""
    }    

# 接口调试

在默认状态下,当接口出现异常或错误时可能只返回公共数据json,这时需要打开程序根目录下.env配置文件,直接查看接口返回的错误信息

// 打开应用调式模式
APP_DEBUG = true

// 打开数据库调试模式
[DATABASE]
DEBUG = true