Jak zachować dane POST za pośrednictwem żądania ajax po przekierowaniu .htaccess?
.htacesss
RewriteCond %{REQUEST_URI} ^/api/(.+)$
RewriteRule ^api/(.+)$ /index.php?api=%1 [QSA,L]
przykładowe żądanie url ajax: „http://hostname.com/api/ext/list.php?query=de”
Chcę móc przekierowywać adresy URL w tym formacie do następującego index.php? Api = {nazwa_pliku_zapytanego} i parametr1 = wartość1 i parametr2 = wartość2 ...
ponieważ cała strona jest przetwarzana przez proces bootstrap w index.php, który ma część trasującą ładującą konfiguracje, szablony itp ...
Gdy próbuję na przykład kodu jquery, dane POST są tracone po przekierowaniu.
$.ajax({
url: '/api/contact.php',
type: 'POST',
data: {
email: $("#contactEmail").val(),
name: $("#contactName").val(),
message: $("#contactMessage").val()
// etc ...
}
});
Przeczytałem, że nie można zachować danych w przekierowaniu http. Ale w jaki sposób unikają tego wszystkie ramy? Zakodowałem wiele, a każdy z nich jest ładowany przez index.php i istnieją reguły przepisywania w pliku .htaccess, aby umożliwić ładowanie adresów URL. Na przykład w Yii wywołałbym url „api / uploads / latests.json” z niektórymi danymi POST, a kontrolery na backendu otrzymałyby te dane. Czego mi tu brakuje?
uwaga: przetestowałem[P] parametr mod_rewrite i myślę, że ten serwer nie ma włączonego mod_proxy.