ublaboo/api-router: RESTful Router for your Apis in Nette Framework – created either directly or via annotatio
- Pavel Janda
- Člen | 977
Tento doplněk samotný umí restově routovat přes anotace i normálně.
Sranda začíná, pokud použijete doplněk společně s
ublaboo/api-docu
. Ale o tom víc ve vedlejším vlákně (zde). :)
Componette: https://componette.org/…/api-router/.
Stránky projektu/dokumentace: http://ublaboo.paveljanda.com/api-router/.
Editoval Pavel Janda (18. 2. 2016 8:39)
- Pavel Janda
- Člen | 977
Nová verze – 1.1.0
- Možnost definovat ignore list pro custom anotace projektu na presenterech/akcích
- martin.knor
- Člen | 17
Ahoj, jde nadefinovat parametry pro POST (create?)
Protoze mi to selhava na
Parameter is not present in the url mask
ale ja ty parametry nechci v url – protoze jdou jako post parametry.
Diky
- Pavel Janda
- Člen | 977
@martin.knor Validaci vstupních POST parametrů budeš muset provést sám, ale dá se to alespoň popsat v dokumentaci (může to vyapdat nějak takto – ten json příklad: http://ublaboo.org/…/api/users/8?…). Nic takového jsem tam nedával, protože post parametry chodí různě.. Form data, json object apod.
- Jak jsem psal, nejlepší je uvést všechno v descirption. Nembo mám přidat další sekci?
- Croc
- Člen | 270
Snažím se zprovoznit ApiRouter a ApiDocu, ale stále dostávám stejnou chybu:
Nette\Application\BadRequestException #404
No route for HTTP request.
Sranda je, že jsem použil přesně příklady z dokumentace. Jak přes router, tak přes anotace.
PHP 7.1.3
Nette 2.4 (nejnovější)
Apache 2.4.10
Nevíš v čem by mohl být problém?
- Pavel Janda
- Člen | 977
@Croc Můžeš mi třeba přes github issue poslat zip se sandbox-like projektem, kde ti to nefunguje? Pak ti asi nejrychleji řeknu, kde je chybka. :)
- Pavel Janda
- Člen | 977
@Aldria To je to issue 12? Je potřeba vymyslet nějakou
funkcionalitu, který dovolovala použít basePath:
localhost/muj/projekt/api/user/1
. Teď to zvládá jednoduché
hosty my-project.loc/api/user/1
,
localhost:30008/api/user/1
.
Takyže doporučuji vytvořit si vhosta. S tím BasePath to totiž vůbec není tak jednoduché. :D
A také doporučuji začínat na
composer create-project ublaboo/api-router-project
, vše je tam
jednoduché a funkční
- Aldria
- Člen | 3
Pavel Janda napsal(a):
@Aldria To je to issue 12? Je potřeba vymyslet nějakou funkcionalitu, který dovolovala použít basePath:
localhost/muj/projekt/api/user/1
. Teď to zvládá jednoduché hostymy-project.loc/api/user/1
,localhost:30008/api/user/1
.Takyže doporučuji vytvořit si vhosta. S tím BasePath to totiž vůbec není tak jednoduché. :D
A také doporučuji začínat na
composer create-project ublaboo/api-router-project
, vše je tam jednoduché a funkční
Aha děkuji, toho zavřeného issue jsem si nevšiml.
- d3tr1tus
- Člen | 52
Ahoj mám stejný problém jako @Croc, ale mám udělaný jednoduchý host a když to zadám jako GET request tak všechno normálně proběhne. Já to potřebuji kvůli Reactu jako POST request a vrací mi to chybu
Nette\Application\BadRequestException #404
No route for HTTP request.
moje Routa
$router[] = new ApiRoute('/api/add-user', "Front:Homepage", ["methods" => ["POST" => "addUser", "OPTIONS"]]);
nemohl by si mi poradit co bych tam mohl mít špatně @PavelJanda? Díky :)