oktatas:programozas:php:php_rest_api:php_mocking
Ez a dokumentum egy előző változata!
Tartalomjegyzék
PHP REST API mocking
- Szerző: Sallai András
- Copyright © Sallai András, 2022
- Web: http://szit.hu
Végpont
Végpont | ||
---|---|---|
products | GET | az összes terméket adja |
Egyszerűen tömbből
- src/api/products/index.php
<?php header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json'); read_data(); function read_data() { $data = [ [ "id"=>1, "name"=>"vaj", "price"=>1.8 ], [ "id"=>2, "name"=>"kenyér", "price"=>0.8 ], [ "id"=>3, "name"=>"tej", "price"=>0.9 ] ]; $res = json_encode( $data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT ); echo $res; }
A tömb egyszerűsített verzióját használtuk PHP-ban. Így is írhatjuk:
$data = array( array( "id"=>1, "name"=>"vaj", "price"=>1.8 ), array( "id"=>2, "name"=>"kenyér", "price"=>0.8 ), array( "id"=>3, "name"=>"tej", "price"=>0.9 ) );
A product tulajdonság megadása:
$data = [ "products" => [ [ "id"=>1, "name"=>"vaj", "price"=>1.8 ], [ "id"=>2, "name"=>"kenyér", "price"=>0.8 ], [ "id"=>3, "name"=>"tej", "price"=>0.9 ] ] ];
$data = [ "products" => [ [ "id"=>1, "name"=>"vaj", "price"=>1.8 ], [ "id"=>2, "name"=>"kenyér", "price"=>0.8 ], [ "id"=>3, "name"=>"tej", "price"=>0.9 ] ], "customers" => [ ["id"=>1, "name"=>"Penge Béla", "city"=>"Szeged"], ["id"=>2, "name"=>"Ezres Irén", "city"=>"Szeged"], ["id"=>3, "name"=>"Látó Ervin", "city"=>"Szeged"], ] ];
Egyszerűen JSON fájlból
- src/api/database.json
[ { "id": 1, "name": "vaj", "price": 2 }, { "id": 2, "name": "kifli", "price": 0.7 }, { "id": 3, "name": "vaj", "price": 2 } ]
- src/api/products/index.php
<?php header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json'); read_data(); function read_data() { $page = file_get_contents('../database.json'); echo $page; }
A products tulajdonsággal
- src/api/database.json
{ "products": [ { "id": 1, "name": "vaj", "price": 2 }, { "id": 2, "name": "kifli", "price": 0.7 }, { "id": 3, "name": "vaj", "price": 2 } ] }
- src/api/products/index.php
<?php header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json'); read_data(); function read_data() { $page = file_get_contents('../database.json'); $obj = json_decode($page); $res = json_encode( $obj->{'products'}, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT ); echo $res; }
Lehetséges JavaScript kliens
- app.js
var url = 'http://localhost:3000/api/products'; fetch(url) .then(res => res.json()) .then(res => { console.log(res ); });
oktatas/programozas/php/php_rest_api/php_mocking.1649601979.txt.gz · Utolsó módosítás: 2022/04/10 16:46 szerkesztette: admin