Request POST mi vypisuje chybu 405 Method Not Allowed
Dobrý den, v Laravel aplikácii mám vytvorený testovací REST API a POST request, ktorý má vrátiť hodnotu „test“. Testujem to na lokálnom webservri Apache (WAMP) a funguje to, ale na wedos webhostingu (POST: bigoo.eu/subdom/API/public/index.php/api/post) mi vypisuje chybu „405 Method Not Allowed“.
Pravdepodobne je to problém v nastaveniach v „.htaccess“, ktorý mám aktuálne nastavený takto:
RewriteEngine On
# cele domeny (aliasy)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]
# subdomeny (s nebo bez www na zacatku)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]
# aliasy - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]
# subdomeny - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Prosím o pomoc, ako (a čo?) nastaviť aby fungoval POST request.
Role: Zákazník
Otázka je uzamčena pro nové odpovědi.
JŠ255861 Vybral nejlepší odpověď
3 Odpověď
Nefunguje žiadny route typu POST (na lokále mi to beží). Tu je najjednoduchší z nich (písané v Laravel, ver.7):
súbor route-ov „api.php“:
/* testovacie routy: */
Route::get('info','API\RegisterController@info');
Route::post('post','API\RegisterController@post');
súbor kontrolér „RegisterController.php“:
class RegisterController extends BaseController {
public function info() {
return 'Toto je info z register kontrolera.';
}
public function post(Request $request) {
$input = $request->all();
$success = 'test: '. $input['test'];
return $this->sendResponse($success, 'test post is OK');
}
A v utilite „Postman“ mám:
POST bigoo.eu/subdom/API/public/index.php/api/post
a v „Body/form-data“ nastaviť:
key: value: test 123456789
Role: Zákazník
JŠ255861 Změnil status na publikováno