Download the PHP package sammy/specification without Composer

On this page you can find all versions of the php package sammy/specification. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package specification

API服务端架构代码

[TOC]

1. 部署说明

现有API基于laravel框架开发,本次介绍也针对laravel。可根据文档自行调整,以适用其他框架下使用

安装 composer require sammy/specification dev-master

1.1. 数据库相关

执行数据库迁移 php artisan migrate

或者手动执行如下SQL语句

1.2. 目录相关

标题 路径
API核心目录 vendor/sammy/specification/
apps数据库模型 app/Models/App.php
路由配置 routes/api.php

2. API文档及开发规范

2.1. API调用协议

2.1.1. 请求方式

请求方式:POST/GET

2.1.2. 公共参数

参数名 类型 是否必须 描述
app_id string 应用ID
format string 回调格式,默认:json(目前仅支持)
sign_method string 签名类型,默认:md5(目前仅支持)
nonce string 随机字符串,长度1-32位任意字符
sign string 签名字符串,参考签名规则

2.1.3. 业务参数

API调用除了必须包含公共参数外,如果API本身有业务级的参数也必须传入,每个API的业务级参数请考API文档说明。

2.1.4. 签名规则

2.1.5. 返回结果

2.2. API开发规范

2.2.1. API接口命名规范(method)

2.2.1. 错误码

错误码配置:vendor/sammy/specification/Error.php

命名规范:

类型 长度 说明
系统码 3 http状态码
公共错误码 4 公共参数错误相关的错误码
业务错误码 6+ 2位业务码+4位错误码,不足补位

现有错误码:

错误码 错误内容
200 成功
400 未知错误
401 无此权限
500 服务器异常
1001 [app_id]缺失
1002 [app_id]不存在或无权限
1003 [method]缺失
1004 [format]错误
1005 [sign_method]错误
1006 [sign]缺失
1007 [sign]签名错误
1008 [method]方法不存在
1009 run方法不存在,请联系管理员
1010 [nonce]缺失
1011 [nonce]必须为字符串
1012 [nonce]长度必须为1-32位

2.2.3. API DEMO 示例

示例代码:

class TestController extends Controller
{
    public function index(Request $request, Server $server){

        return $server->run(function()use($request){

            return [
                'status' => true,
                'code'   => '200',
                'data'   =>  [
                    date('Y-m-d H:i:s')
                ]
            ];

        });

    }
}

All versions of specification with dependencies

PHP Build Version
Package Version
Requires php Version >=7.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sammy/specification contains the following files

Loading the files please wait ....