接口规范

2017-08-04  本文已影响0人  r圣雪

接口框架

https://pliik.github.io/gugamarket/Gugamarket is a fullstack REST API framework ,Nodejs + MongoDB

Fit for

OpenAPI DL

developer:https://github.com/pliik

BUILT WITH

Node

Swagger (REST Api documentation)

Express (MVC Framework)

Mongoose (MongoDB ORM)

mongoose-nested-set (Hierarquical Catalog Tree)https://github.com/groupdock/mongoose-nested-set

Jade (Template)

Passwordless (token email authentication)

Mocha (Unit Testing)

S

接口规范https://en.wikipedia.org/wiki/Interface_description_language

基于RESTful的DL比较https://en.wikipedia.org/wiki/Overview_of_RESTful_API_Description_Languages

OpenAPI Specification

URL:https://openapis.org/

developer: Open API Initiative (OAI), originally developed as "Swagger" specification byWordnik,SmartBear Software

3.0开始, MULE加入,导致支持 RAML接口https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.md

RESTful API Modeling Language(RAML)https://en.wikipedia.org/wiki/RAML_(software)

URL:http://raml.org/

developer: Mulesoft,http://www.mulesoft.com/

接口开发工具

http://swagger.io/Swagger is the world’s largest framework of API developer tools for the OpenAPI Specification(OAS), enabling development across the entire API lifecycle, from design and documentation, to test and deployment.

接口在线编辑器:http://editor.swagger.io/#/直接转换出接口的STUB

Swagger Codegen can simplify your build process by generating server stubs and client SDKs from your Swagger specificationhttp://swagger.io/swagger-codegen/

商业工具http://swagger.io/commercial-tools/

http://swagger.io/open-source-integrations/

RAML

https://github.com/RJAPI/raml-json-api将RAML直接转换为LARAVEL的接口。

http://apiworkbench.com/docs/RAML集成开发环境。API Workbench, a rich, full-featured integrated development environment (IDE) for designing, building, testing, documenting and sharing RESTful HTTP APIs. It supports both RAML 0.8 and the recently launched RAML 1.0.RAMLmakes it easy to manage the whole API lifecycle from design to sharing.

https://github.com/mulesoft/api-designerweb版本的开发工具

https://github.com/raml2html/raml2html将raml接口文档转换为HTML

https://github.com/mulesoft/api-consoleAn API console forRAML(Restful Api Modeling Language) documents. The RAML Console allows browsing of API documentation and in-browser testing of API methods.

其它自动化 RESTFUL

https://github.com/api-platform/api-platformBuild modern, hypermedia APIs with ease, generate React applications from the API documentation.https://api-platform.com

https://github.com/api-platform/core

https://github.com/mevdschee/php-crud-apiSingle file PHP script that adds a REST API to a MySQL 5.5 InnoDB database. PostgreSQL 9.1 and MS SQL Server 2012 are fully supported. There is even limited support for SQLite 3.值得看

接口模拟工具 模拟接口

https://github.com/typicode/json-server

https://github.com/farolfo/raml-server

数据描述语言

json:api

http://jsonapi.org/

Started as REST adapter forEmberData

JSON Schema

http://json-schema.org/implementations

used by OpenAPI, Google APIs Discovery,[6]I/O Docshttps://en.wikipedia.org/wiki/JSON#JSON_Schema

https://en.wikipedia.org/wiki/Open_Data_Protocol来自微软,主流使用,由PHP, JS客户端。 适应JSON。 REST

https://en.wikipedia.org/wiki/GData来自谷歌, 与oData是竞争性关系, REST

http://avro.apache.org/docs/current/#compareApache Avro™ is a data serialization system. Avro provides functionality similar to systems such asThrift,Protocol Buffers,

数据序列化语言比较https://en.wikipedia.org/wiki/Comparison_of_data_serialization_formats

JSONhttp://www.json.org/

REST 服务描述语言

REST的介绍:

http://www.ruanyifeng.com/blog/2011/09/restful.html

http://www.oschina.net/translate/what-does-restful-really-mean

http://www.cnblogs.com/artech/p/3506553.html我所理解的RESTful Web API [设计篇]

http://www.cnblogs.com/artech/p/restful-web-api-01.html我所理解的RESTful Web API [Web标准篇]

关系资源的REST例子https://www.infoq.com/articles/rest-introduction

URI模板

PHP URI Template (RFC 6570) supports both URI expansion & extraction

https://github.com/rize/UriTemplatePHP URI Template (RFC 6570) supports both URI expansion & extraction

https://github.com/ioseb/uri-templatePHP extension implementation of RFC-6570(URI Template) in C使用方法例子介绍比较多

A JavaScript URI template implementation (RFC 6570 compliant)

https://github.com/bramstein/url-template

https://github.com/geraintluff/uri-templates

https://github.com/fxa/uritemplate-js

https://github.com/LuvDaSun/rfc6570RFC 6570 compliant uri template parser, builder and router

Vue.js + URI.js = a URI Templates playgroundhttps://github.com/BigBlueHat/vue-uri

https://en.wikipedia.org/wiki/RSDL

https://en.wikipedia.org/wiki/HATEOAS超媒体问题

https://en.wikipedia.org/wiki/Hypertext_Application_Language(类似hateoas

Laravel

直接讲RAML转换为LARAVEL接口实现https://github.com/RJAPI/raml-json-api将RAML直接转换为LARAVEL的接口。

https://github.com/slampenny/SwaggervelWhen you run your app in debug mode, Swaggervel will scan your app folder (or any folder that is set under the "app-dir" variable in the packages config), generate swagger json files and deposit them to the doc-dir folder (default is/docs). Files are then served by swagger-ui under the api-docs director.

https://github.com/DarkaOnLine/L5-SwaggerThis package is a wrapper ofSwagger-phpandswagger-uiadapted to work with Laravel 5.

https://github.com/DarkaOnLine/SwaggerLumeThis package is a wrapper ofSwagger-phpandswagger-uiadapted to work with Lumen 5.

Eloquent 与 jsonapi之间的转换https://github.com/nilportugues/laravel5-jsonapi

让laravel应用与jsonapi兼容https://github.com/cloudcreativity/laravel-json-api

使用laravel建立jsonapi接口服务https://github.com/czim/laravel-jsonapi

oData

https://github.com/Algo-Web/POData-Laravel

https://github.com/AnitaYip/OData-Lumen

基于Laravel 实现Restful接口的教程Repository with the base code for the course "RESTful API with Laravel - Definitive-Guide"https://github.com/JuanDMeGon/RESTful-API-with-Laravel-Definitive-Guide

http://hateoas-php.org/https://github.com/willdurand/HateoasA PHP library to support implementing representations for HATEOAS REST web services , 支持HATEOAS

http://stateless.co/hal_specification.html

PHP Hypermedia API Wrapper for HATEOAS Enabled HTTP or REST Serviceshttps://github.com/solvire/php-hypermedia-api

Nodejs 客户端

https://github.com/marmelab/restful.jsA pure JS client for interacting with server-side RESTful resources. Think Restangular without Angular.

https://github.com/traverson/traversonclient A Hypermedia API/HATEOAS Client for Node.js and the Browserhttps://github.com/traverson/traverson/blob/master/user-guide.markdown

OTHER

https://github.com/GoIntegro/hateoasThis is a library that uses a Doctrine 2 entity map and aRAMLAPI definition to conjure aHATEOASAPI, following theJSON-APIspecification.

上一篇下一篇

猜你喜欢

热点阅读