Pracuję nad aplikacją Angular JS, która rozmawia z serwisem PHP/Apache.Metoda PUT nie jest dozwolona przez metody kontroli dostępu w odpowiedzi wstępnej
Dotychczas zostało działa dobrze dla POST i GET, ale dla PUT Mam następujący błąd
Method PUT is not allowed by Access-Control-Allow-Methods in preflight response.
Ja testowałem API z Postman i to działa dobrze
Masz pomysł na rozwiązanie mojego problemu? Dzięki
Należy pamiętać, że serwer API, Apache posiada następujące config już
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"
Header set Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
Options All
AllowOverride All
Allow from all
i Chrome ma ten nagłówek odpowiedzi
HTTP/1.1 200 OK
Date: Mon, 15 Feb 2016 02:52:56 GMT
Server: Apache/2.4.7 (Ubuntu)
X-Powered-By: PHP/5.5.9-1ubuntu4.14
Allow: GET,HEAD,PUT,PATCH,DELETE
Cache-Control: no-cache
Set-Cookie: laravel_session=eyJpdiI6IldvM3Z5eUpKcUI5Q0RXam5UN283TEE9PSIsInZhbHVlIjoiV3FnTVpUcFliWjZvczFrM2VuYXpBamI5NmIwR24rdThPWGRuMUZjbjd5K0I2N3F1REp4ZFJVc3U3QnhCZmxmZ0ZONDU4SEVtWm42SUVEWmJhRmF6M1E9PSIsIm1hYyI6ImMzOTVlNDZhZmNjYWNlM2I1N2FjYjQ4N2FhZDc5ZWY2MWJhYTdiNDBlMWExMGJkYzczYzE1MTczMzAyYzVkMjEifQ%3D%3D; expires=Mon, 15-Feb-2016 04:52:56 GMT; Max-Age=7200; path=/; httponly
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept
Content-Length: 0
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
czy możesz dołączyć wszystkie nagłówki dla żądania i odpowiedzi oprócz konfiguracji serwera? – kmanzana
Przepraszam, ta kwestia została już od jakiegoś czasu rozwiązana. To właściwie głupi błąd. Jeśli się nie mylę, to dlatego, że strona API zawierała literówkę dotyczącą parametrów, ale jakoś Chrome właśnie opublikował ten błąd: –