vesparny/silex-simple-rest
Composer 安装命令:
composer require vesparny/silex-simple-rest
包简介
A simple silex skeleton for rest api
关键字:
README 文档
README
A simple silex skeleton application for writing RESTful API. Developed and maintained by Alessandro Arnodo.
This project wants to be a starting point to writing scalable and maintainable REST api with Silex PHP micro-framework
Continuous Integration is provided by Travis-CI.
How do I run it?
After download the last release, from the root folder of the project, run the following commands to install the php dependencies, import some data, and run a local php server.
You need at least php 5.5.9* with SQLite extension enabled and Composer
composer install
sqlite3 app.db < resources/sql/schema.sql
php -S 0:9001 -t web/
You can install the project also as a composer project
composer create-project vesparny/silex-simple-rest
Your api is now available at http://localhost:9001/api/v1.
Run tests
Some tests were written, and all CRUD operations are fully tested :)
From the root folder run the following command to run tests.
vendor/bin/phpunit
What you will get
The api will respond to
GET -> http://localhost:9001/api/v1/notes
GET -> http://localhost:9001/api/v1/notes/{id}
POST -> http://localhost:9001/api/v1/notes
PUT -> http://localhost:9001/api/v1/notes/{id}
DELETE -> http://localhost:9001/api/v1/notes/{id}
Your request should have 'Content-Type: application/json' header. Your api is CORS compliant out of the box, so it's capable of cross-domain communication.
Try with curl:
#GET (collection)
curl http://localhost:9001/api/v1/notes -H 'Content-Type: application/json' -w "\n"
#GET (single item with id 1)
curl http://localhost:9001/api/v1/notes/1 -H 'Content-Type: application/json' -w "\n"
#POST (insert)
curl -X POST http://localhost:9001/api/v1/notes -d '{"note":"Hello World!"}' -H 'Content-Type: application/json' -w "\n"
#PUT (update)
curl -X PUT http://localhost:9001/api/v1/notes/1 -d '{"note":"Uhauuuuuuu!"}' -H 'Content-Type: application/json' -w "\n"
#DELETE
curl -X DELETE http://localhost:9001/api/v1/notes/1 -H 'Content-Type: application/json' -w "\n"
What's under the hood
Take a look at the source code, it's self explanatory :) More documentation and info about the code will be available soon.
Under the resources folder you can find a .htaccess file to put the api in production.
Contributing
Fell free to contribute, fork, pull request, hack. Thanks!
Author
License
see LICENSE file.
统计信息
- 总下载量: 6.75k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 333
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2012-09-03