Buduję aplikację dla systemu Android, używając funkcji reagowania natywnej wersji expo zintegrowanej z redukcją. Interfejs API jest wywoływany za pomocą metody pobierania, ale zawsze wyświetlany jest wynik z pamięci podręcznej. Serwer nie odebrał żądania po raz drugi. Próbowałem wyłączyć pamięć podręczną za pomocą następującego kodu.React Natywny interfejs API pobierania nie może wyłączyć buforowania.
export const mymails = (token) => {
return fetch(
API_URL+'?random_number='+ new Date().getTime(), {
method: 'GET',
headers: getHeaders(token)
})
.then(response => response.json());
};
getHeaders = (token) => {
return {
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Token token='+token,
'Cache-Control': 'no-cache, no-store, must-revalidate',
'Pragma': 'no-cache',
'Expires': 0
};
}
Kiedy wywołuję API za pomocą klienta Postmana, widzę inny wynik (nie jest buforowany). Próbowałem dodać liczbę losową jako parametr i ustawiając nagłówki kontrolek pamięci podręcznej, ale nadal zwracając wynik w pamięci podręcznej. Czy jest coś, co mógłbym spróbować.
Dzięki
Interesujące. AFAIK, api aportu nie powoduje automatycznego buforowania czegokolwiek. Może buforowanie dzieje się na końcu API? Czy chciałbyś udostępnić punkt końcowy API, aby móc z nim grać? –
Myślę, że "Cache-Control": "no-cache" musi być pracą. Czy możesz udostępnić punkt końcowy interfejsu API, abyśmy mogli sprawdzić numer: –
Niestety, to był błąd na serwerze. Nazwałem inną funkcję, a nie tą, którą edytowałem. Ah. głupi ja. –