dingo/API 文档翻译

社区维护了一个文档,请见:《Dingo API 2.0.0 中文文档》

https://github.com/liyu001989/dingo-api-wi...

dingo/api 是个很好用的工具,大致翻译了一下,我英文不好,有需要的同学凑合着看看吧。

Dingo Api 是致力于提供给开发者一套工具,帮助你方便快捷的建造你自己的API。这个包的目标是保持尽可能的灵活,它并不能覆盖所有的情况,也不能解决所有的问题。
  1. Installation-安装
  2. Configuration-配置
  3. Creating API Endpoints-创建端点
  4. Responses-响应
  5. Errors And Error Responses-错误和错误响应
  6. Transformers
  7. Authentication-认证
  8. Rate Limiting-访问速度限制
  9. Internal Requests-内部调用
  10. OAuth 2.0
  11. Making Requests To Your API-访问你的api
  12. API Blueprint Documentation-API文档
  13. Commands-命令行
  14. Package Incompatibilities-包冲突
本帖已被设为精华帖!
本帖由系统于 6年前 自动加精
liyu001989
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 26
Summer

翻译的挺好,PHPHub 就是用 dingo 做的 API,文档里的知识点挺多的。

7年前 评论
Ryan

翻译的不错

7年前 评论

翻译的很棒,正好需要。

7年前 评论

我刚了解这个扩展包,试用了一下,有几个疑惑:

  1. 如果我要返回json格式数据,在控制器里不是直接 response()->json() 方法可以返回么,如果要控制返回的字段,也可以很容易做到啊

  2. dingo 可以分很多版本,我用 Laravel 路由其实也很方便做到,如果是请求头带版本,也很好判断

  3. 认证这些不是中间件也很好实现么

总之,你告诉我 dinggo 的独特之处是什么,哪几个功能是 Laravel 本身不好做到的?

7年前 评论
liyu001989

@纸牌屋弗兰克

dingo 只是一个工具包,帮我们把rest api所要用的东西整理好了,就是方便,不重复造轮子。没有什么是laravel本身不好做的,只是你自己造的轮子够不够好的问题

  1. 你可以直接response()->json(),但是这样可能不够好,比如下面这些功能,你可以访问试试,自己造方不方便

    http://lumen.lyyw.info/api/posts 所有帖子列表
    http://lumen.lyyw.info/api/posts?include=user 所有帖子列表及发帖用户
    http://lumen.lyyw.info/api/posts?include=user,comments 帖子列表及发帖的用户和发帖的评论
    http://lumen.lyyw.info/api/posts?include=user,comments:limit(1) 帖子列表及发帖的用户和发帖的1条评论
    http://lumen.lyyw.info/api/posts?include=user,comments.user 帖子列表及发帖的用户和发帖的评论,及评论的用户信息
    http://lumen.lyyw.info/api/posts?include=user,comments:limit(1),comments.user 帖子列表及发帖的用户和发帖的1条评论,及评论的用户信息,及评论的用户信息

    数据返回的结构,该如何嵌套,如何相互引用, 当然这是靠 Fractal 处理的,但是dingo帮我们整合好了。

  2. 2和3两个问题同样的,没什么不好实现的,只是这个包实现的够好,我想快速开始写api而不是还在纠结在最开始。

当然不使用这个包的理由有千千万万:配置麻烦,知识点多,ios 只有返回200才去解析body,rest思想让我觉得很麻烦,等等等等。所以不如尝试一下,我只是帮助大家翻译了一下文档,绝对没有逼你 :smile:

7年前 评论
liyu001989

@Summer 怎么好像markdown渲染有问题啊,右边被挡住了一部分

7年前 评论

@liyu001989 感谢指点,我是疑惑请教一下,你翻译很好,不是说你逼我用,哈哈!

7年前 评论
liyu001989

@纸牌屋弗兰克 :smile: :+1:

7年前 评论

大神你好,公司叫我使用dingo api, 我想问下,dingo api的主要作用是什么呢?

6年前 评论
liyu001989

@梦里曾经与画眉 主要作用,快速开始写接口

6年前 评论
Summer

@liyu001989 Markdown 渲染问题已解决 :cry:

6年前 评论
Epona

@梦里曾经与画眉 主要是用来写api接口的,集成了比较方便的transformer来格式化数据,以及还有api的版本管理,比如v1,v2等等

不过,个人感觉在Laravel5.5下已经不是很需要dingo api了。 5.5新加入了resource,可以格式化数据。另外,dingo api适配5.5比较缓慢,也是要考虑的一个问题

6年前 评论
liyu001989

@Epona 是的,5.5的resource跟fractal的功能是一样的,我从 dingo 从5.1一直用到5.5,习惯了,适配慢?我们感觉没啥问题。

6年前 评论
Epona

@liyu001989 之前在5.4的时候安装dingo 出了些小问题,大体使用倒是没什么问题。

6年前 评论

准备要用,赞一个。

6年前 评论

dingo 已经很久没维护了

5年前 评论
liyu001989

@Phx 上一个提交是 3月8号,2个月嘛

5年前 评论

composer require dingo/api:1.0.*@dev 一直按不上

5年前 评论
liyu001989

打开 composer.json 填写 "dingo/api": "v2.0.0-alpha2" 执行 composer update

5年前 评论

想着把项目升级到laravel5.8,结果 dingo/api 会报错 :confused:

5年前 评论
liyu001989

@yanthink https://github.com/dingo/api/issues/1624 有 issue 了,关注一下吧

5年前 评论

@liyu001989 嗯,昨天就关注了

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!