Git Product home page Git Product logo

php-tiny-rest's Introduction

Tiny Rest

One small single file with Router, Request and Response classes for tiny rest Apps.

TinyRest provides:

  • Registration of Post and Get routes.
  • A mandatory action argument (no rewrite needed or supported).
  • An Http Request class that queries $_POST and $_GET (with support for Json over Post).
  • An Http Response class that returns Json encoded replies.

Usage

Download the file and include it

You can simply download the TinyRest.php file, put it somewhere on your disk and include it from your script.

include('TinyRest.php`);

Get the Github repository and load it through Composer

You can get the repository from Github: https://github.com/aoloe/php-tiny-rest...

... and then link it in your projects composer.jsonby the path on your computer:

"repositories": [
    {
        "type": "path",
        "url": "/your/path/to/php-tiny-rest"
    }
],
"require": {
    "aoloe/tiny-rest": "@dev"
}

See the test script below for a basic usage (and TinyRest cannot do much more than that...).

Let Composer get TinyRest from Github

You can also tell Composer to get the TinyRest from Github:

"repositories": [
    {
        "type": "vcs",
        "url":  "[email protected]:aoloe/php-tiny-rest.git"
    },
],
"require": {
    "aoloe/tiny-rest": "dev-master"
}

See the test script below for a basic usage (and TinyRest cannot do much more than that...).

A test script

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

include('vendor/autoload.php');

$app = new Aoloe\TinyRest\App();

$request = Aoloe\TinyRest\HttpRequest::create();
$response = new Aoloe\TinyRest\HttpResponse();

$app->get('list', function() use($request, $response) {
    $response->respond(['test' => 'This is a test', 'you' => $request->get('me')]);
});

if (!$app->run($request)) {
    $response->respond($app->error_message);
}

If you're using the php internal server, you can test the script with:

http://localhost:8080?action=list&me=arthur

php-tiny-rest's People

Contributors

aoloe avatar

Stargazers

Ruben Carracedo avatar

Watchers

André Philip avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.