用laravel dingo/api创建简单的api
1,修改.env配置文件添加
API_STANDARDS_TREE=vnd
API_SUBTYPE=myapp
API_PREFIX=api
API_DOMAIN=null
API_VERSION=v1
API_NAME="My API"
API_CONDITIONAL_REQUEST=false
API_STRICT=false
API_DEBUG=true
Standards Tree 标准树
这有三个不同的树: x,prs 和 vnd。你使用的标准树需要取决于你开发的项目
未注册的树(x)主要表示本地和私有环境
私有树(prs)主要表示没有商业发布的项目
供应商树(vnd)主要表示公开发布的项目
子类型SUBTYPE
子类型通常是应用程序或项目的短名称,都是小写的。
前缀PREFIX (比如www.z5w.net/api/)
如果你曾经使用过 API 你就会知道大多数服务都来自子域或前缀。前缀或子域是必须的,但只需要一个。请避免使用版本号作为你的前缀或子域,因为版本控制是通过 header 头 Accept 处理的。
子域名API_DOMAIN
比如可以用api.z5w.net来做api的调用地址。如果已经设置了前缀prefix,则domain一般设为null
版本号version
这个版本号是你的 API 的默认版本号,并且会在一些未提供版本号的情况下作为回调的默认值使用。在生成 API 文档时也会使用这个版本号作为默认值。
名称Name
你的 API 的名称只会在你使用 API Blueprint 命令生成文档的时候使用。使用此名称可以避免你每次生成文档的时候都必须手动定义名称。
你可能需要把它用引号包起来。
条件请求CONDITIONAL_REQUEST
『条件请求』默认为开启状态,这有利于客户端的缓存机制在可能的情况下缓存 API 请求。
严格模式STRICT
严格模式要求客户端发送 Accept 头,代替配置文件中配置的默认版本。这意味着你将不能通过浏览器直接访问你的 API。
如果开启严格模式,发送非法的 Acceept 标头会抛出一个未处理的异常 Symfony\Component\HttpKernel\Exception\BadRequestHttpException ,你需要自己处理这个异常。
调试模式Debug
该包处理的通用错误包括一个 debug 键,当启用这个键时,将会填充堆栈跟踪详细信息。
2,在/routes/web.php添加路由
$api = app('Dingo\Api\Routing\Router');
$api->version('v1', function ($api) {
$api->get('helloworld', 'App\Api\Controllers\HelloController@index');
});
3,创建文件/app/Api/Controllers/HelloController.php
<?php namespace App\Api\Controllers; use Illuminate\Http\Request;
use App\Http\Controllers\Controller; class HelloController extends Controller
{
public function index()
{
return '{content:Helloworld!}';
}
}
4,测试路由: $ php artisan api:routes,如果出现
+------+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+
| Host | Method | URI | Name | Action | Protected | Version(s) | Scope(s) | Rate Limit |
+------+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+
| | GET|HEAD | /api/helloworld | | App\Api\Controllers\HelloController@index | No | v1 | | |
+------+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+
表示成功
然后访问http://www.*.com/api/helloworld,看看是不是出现了api的json数据呢?
{content:Helloworld!}
用laravel dingo/api创建简单的api的更多相关文章
- 使用 Express 和 waterline 创建简单 Restful API
这几篇都是我原来首发在 segmentfault 上的地址:https://segmentfault.com/a/1190000004996659 突然想起来我这个博客冷落了好多年了,也该更新一下, ...
- laravel dingo/api添加jwt-auth认证
前面我们学了laravel dingo/api创建简单的api,这样api是开放给所有人的,如何查看和限制api的调用呢?可以用jwt-auth来验证,JSON Web Token Authentic ...
- 用laravel dingo/api创建产品api
沿着上一篇来讲,我们来创建一个简单的item产品api,也是用到laravel dingo/api来实现,对dingo/api不熟的朋友可以翻看前面的文章.好,我们随着ytkah一起来创建产品api ...
- phoenix 开发API系列(一)创建简单的http api
安装 phoenix framework 安装 phoenix 很简单: mix archive.install https://github.com/phoenixframework/archive ...
- 入门教程:.NET开源OpenID Connect 和OAuth解决方案IdentityServer v3 创建简单的OAuth2.0服务器,客户端和API(三)
本教程的目的在于创造尽可能简单的identityserver安装作为一个oauth2授权服务器.这应该能够让你了解一些基本功能和配置选项(完整的源代码可以发现在这里).在后面的文档中会介绍更多的高级功 ...
- ASP.NET+MVC入门踩坑笔记 (一) 创建项目 项目配置运行 以及简单的Api搭建
哈喽各位 我又回来了! 前段时间研究了下ASP.NET,刚开始也是随便找网上的各种教程来看,但是鉴于本人技术有限,还是走了相当长的一段弯路的.所以我写下了这篇文章.希望各位刚刚入坑的ASP.NET开发 ...
- Laravel 5.5 使用 Jwt-Auth 实现 API 用户认证以及刷新访问令牌
最近在做一个公司的项目,前端使用 Vue.js,后端使用 Laravel 构建 Api 服务,用户认证的包本来是想用 Laravel Passport 的,但是感觉有点麻烦,于是使用了 jwt-aut ...
- demo工程的清单文件及activity中api代码简单示例
第一步注册一个账户,并创建一个应用.获取app ID与 app Key. 第二步下载sdk 第三步新建工程,修改清单文件,导入相关的sdk文件及调用相应的api搞定. 3.1 修改清单文件,主要是加入 ...
- 创建一个提供数据 API 的 Node.js 网站
创建站点目录 首先,创建一个文件夹用来保存你的站点文件,使用 mkdir 就可以了 PS C:\> mkdir mysite 然后,进入到这个文件夹进行下一步的操作. 创建包说明 使用记事本或者 ...
随机推荐
- 上网爱快?EasyRadius FOR 爱快V2接口测试版正式推出,欢迎广大爱迷们测试噢
…… …… 有些人问:为什么上面要打省略号?那些因为此处省略无数字,但是我还是要和大伙们谈谈EasyRadius支持爱快的故事 早在2013年的时候,我们内部就有发布爱快接口,但是由于当时V1的爱快, ...
- 查看pip安装的Python库
查看安装的库 pip list或者pip freeze 查看过时的库 pip list --outdated 批量更新的Python脚本 import pip from subprocess impo ...
- win7下安装Office2010老是出现提示安装MSXML6.10.1129.0,下载官方MSXML后提示安装成功却也安装不了
在注册表中增加以下信息: [HKEY_CLASSES_ROOT\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}][HKEY_CLASSES_ROOT\Ty ...
- duilib进阶教程 -- 在duilib中使用MFC (2)
好人做到底,送佛送到西.虽然上一篇教程已经说得很详细了,但Alberl还是再举一个例子.上一篇教程的主窗口是MFC的,所以这篇教程把主窗口换成duilib的~O(∩_∩)O~ 1.我们利用<20 ...
- H5 (webApi) 接口帮助文档
只有你想不到,没有找不到的,强大的 webApis!!! https://developer.mozilla.org/en-US/docs/Web/API
- mac环境变量
环境: 当前已经有 .bash_profile文件了 打开.bash_profile: open -e .bash_proile open -e .bash_profile 查看node安装路径: w ...
- 一款Redis客户端,可以作为Redis Desktop manager的有效补充或替代
一.由来 对于redis客户端,我和大多数人一样,都是用Redis Desktop Manager. 但我发现个问题,我的版本是0.9.1.771. 我这个版本有个问题,就是如果value太长的话,不 ...
- SQL逻辑查询语句执行顺序 需要重新整理
一.SQL语句定义顺序 1 2 3 4 5 6 7 8 9 10 SELECT DISTINCT <select_list> FROM <left_table> <joi ...
- day_6.10 tcp三次握手 四次挥手
tcp和udp对比 tcp比udp稳定 断开连接的四次挥手
- CCPC-Wannafly Winter Camp Day4 G---置置置换【递推】【组合数】【逆元】
置置置换 已经提交 已经通过 63.89% Total Submission:72 Total Accepted:46 题目描述 wlswlswls有一个整数nnn,他想请你算一下有多少1...n1. ...