내 응용 프로그램에서 양식 기반 검색 결과와 함께 발생하는 반복적 인 문제에 대한 해결책을 찾고 있습니다.검색 결과 및 뒤로 버튼/HTML 양식
기본적으로 사용자가 HTML 양식을 사용하여 검색하고 데이터베이스의 결과를 다음 페이지에 표시 할 때 이것은 완벽하게 작동합니다. 사용자가 결과 집합의 개별 레코드를 클릭 한 다음 브라우저에서 "뒤로"를 클릭하면
그러나, 브라우저 (파이어 폭스) 요청 :
는 "이 페이지를 표시하려면, 파이어 폭스 을해야합니다 이전에 수행 된 작업 (검색 또는 주문 확인)을 반복 할 정보를 보내십시오. "
예를 들어, 사용자는 DVD 컬렉션을 검색하기 위해 연도별로 검색하고 개별 영화를 클릭합니다. 사용자가 검색 결과 페이지를 다시 클릭하면 사용자가 해당 양식 데이터를 다시 제출하거나 다시 보내지 않아도되기를 원하지 않습니다.
아무도이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
자세한 정보를 얻으려면 POST 메서드를 사용하여 양식을 제출하고 다음 헤더를 사용하여 브라우저에서 페이지를 캐시하지 못하도록합니다. 대부분의 사이트가 암호로 보호이므로
Header('Pragma: no-cache');
Header("Cache-control: private, no-cache, no-store");
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");.
, 나는 암호로 보호 측면 캐시를 원하고 로그인 후까지 다시 가져 될 수 없습니다.
기본적으로 이러한 유형의 브라우저 동작을 피하는 가장 좋은 방법은 무엇이며 그 원인은 무엇입니까? 범행을 범하지 않습니까? 검색 결과 페이지의 페이지로드에서 향후 2 분의 만료 시간을 지정해야합니까?
다른 사이트에서이 문제가 나타나지 않기 때문에 가장 좋은 방법은 무엇입니까? no-cache 부분에 대해 모두 잘못 생각하고 있습니까?
데이터가 URL에있는 것이 아니라 POST 데이터가 "쓰기"또는 데이터 변경으로 간주되는 반면 GET은 읽기 요청으로 간주됩니다. 리소스를 두 번 다시 읽지 않아도 아무런 영향이 없으며 리소스에 다시 쓰면 끔찍한 결과가 발생할 수 있습니다. 따라서 브라우저 경고. –
대부분의 경우 사실이며 가치가 있습니다. ;-) 동의합니다. – streetparade