Hướng dẫn zircote/swagger-php
Show Tài liệu là xương sống của một ứng dụng. Nó cho phép các developers hiểu cách ứng dụng hoạt động mà không cần phải đọc qua toàn bộ source code. Swagger là một framework có thể hỗ trợ các developers trong toàn bộ quá trình phát triển API, từ thiết kế và viết tài liệu, cho đến testing và deployment. Cài đặtHãy bắt đầu với một ứng dụng đơn giản. ComposerĐầu tiên chúng ta cần cài đặt composer, tạo một project Laravel và cài đặt các dependences. https://getcomposer.org/download/ LaravelSử dụng composer tạo một Laravel project, phiên bản Laravel hiện tại là 5.7.
Local Development ServerViệc cài đặt môi trường không nằm trong phạm vi bài viết, vì vậy chúng ta sẽ sử dụng
Swagger
Cài đặtTrong bài viết này tôi sử dụng version 2.0.13.
Files & ScriptsSwagger yêu cầu một số thông tin về ứng dụng, chẳng hạn như hostname, trong trường hợp này là localhost. Điều quan trọng là giữ các files không nằm ngoài thư mục root của project, vì vậy chúng ta hãy chạy một số command. Tạo development folder và các swagger scripts.
Trong file
Nội dung file
Cuối cùng đến file
Chạy ScriptCuối cùng chúng ta đã có thể chạy script.
Nó đã hoạt động. Tuy nhiên chúng ta vẫn cần làm một số việc nữa để có thể test các API endpoints. Endpoint Documentation & ValidationTrong tutorial này, chúng ta sẽ tạo một controller gọi là UserController (app/Http/Controllers/UserController.php). Đều tiên chúng ta hãy tạo một endpoint để có thể sử dụng tính năng này. RoutingTrong
ControllerĐối với UserController, chúng ta sẽ sử dụng code dưới đây:
Chúng ta có thể chắc chắn rằng api này đã hoạt động bằng cách chạy nó trên trình duyệt
http://127.0.0.1:8000/api/create?firstname=viblo&lastname=reader Ta sẽ thấy
Swagger UIChúng ta đã có thể tạo ra document file bằng json, bây giờ chúng ta sẽ tạo UI để có thể tương tác và test các endpoints. File
Cài đặtTrong file User InterfaceĐể thêm giao diện chúng ta sẽ truy cập https://github.com/swagger-api/swagger-ui, download về và copy các file trong Sửa lại file index.htmlChúng ta cần sửa lại
Swagger AnnotationsAnnotations là format viết swagger documentation trong các php files tạo thành file swagger.json. Thông thường, annotations nên được đặt trực tiếp trong các controllers (app/Http/Controllers). Chúng ta sẽ bắt đầu tìm hiểu những annotation blocks nào quan trọng nhất.
Thêm Swagger annotations dưới đây vào trước
Thành quảBạn có thể xem thành quả tại http://127.0.0.1:8000/swagger/index.html Chúng ta có thể điền giá trị firstname, lastname sàu đó bấm Execute để test endpoint Như với hầu hết các hướng dẫn, có rất nhiều điều về Swagger và tài liệu nói chung. Tôi khuyên bạn nên truy cập vào package trên Github để hiểu rõ hơn về cách mọi thứ hoạt động và cú pháp liên quan đến các yêu cầu phức tạp hơn. Cảm ơn đã đọc bài viết. Tham khảo: http://garrettvorce.com/laravel-and-swagger-documentation/ |