Skip to content

kebingyu/api-laravel

Repository files navigation

A simple RESTful blog api

  • Built on top of Laravel 5
  • Using TDD

Install

  • git clone https://github.com/kebingyu/api-laravel.git
  • Install composer and move composer.phar into /usr/bin/
  • Go to the cloned folder
  • Put in composer install to resolve denpendency
  • Put in cp .env.example .env
  • Put in php artisan key:generate
  • Edit .env and put in database credential. If you have problem connecting to localhost, try to use DB_HOST=127.0.0.1
  • Create the database you just used in .env in mysql
  • Put in php artisan migrate:refresh --seed
  • Put in vendor/bin/phpunit tests/ and make sure all tests are green
  • Set up a site using apache or use PHP built-in web server by putting in php artisan serve
  • If you are using phpbrew to switch to php5.4+ like me, make sure to add +mysql +pdo when you run phpbrew install

API

User

  • A GET to /v1/user/[:key] : Retrieve user info by user id/name/email. Access token required.
  • A POST to /v1/user : Register a new user.
  • A PUT to /v1/user/[:key] : Update user info by user id/name/email. Access token required.
  • A DELETE to /v1/user/[:key] : Delete user by user id/name/email. Access token required.

Login/out

  • A POST to /login : User log in. Receive an access token.
  • A POST to /logout : User log out. Access token required.

Blog

  • A GET to /v1/blog/[:id] : Retrieve blog info by blog id. Access token required.
  • A POST to /v1/blog : Create a new blog. Access token required.
  • A PUT to /v1/blog/[:id] : Update blog info by blog id. Access token required.
  • A DELETE to /v1/blog/[:id] : Delete blog by blog id. Access token required.

Tag

  • A GET to /v1/tag/blog/[:id] : Retrieve all tags belong to given blog. Access token required.
  • A GET to /v1/tag/user/[:id] : Retrieve all tags belong to given user. Access token required.
  • A POST to /v1/tag : Create a new tag. Access token required.
  • A DELETE to /v1/tag/[:id] : Delete tag by tag id. Access token required.

About

A simple blog api built on top of Laravel 5

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages