CGI의 예전에는 다양한 백엔드 작업을 트리거하는 많은 양식이있었습니다. 그룹에 대한 문자 알림, 인쇄 작업, 데이터 파밍 등
사용자가 "잠시만 기다려주십시오 ... 시간이 걸릴 수있는 거대한 작업을 수행 중입니다."라는 페이지에있는 경우. 그들은 REFRESH를 칠 가능성이 더 높았고 이것은 나쁠 것입니다!
왜? 그것은 더 느린 작업을 유발하고 결국 모든 것을 멈출 것이기 때문입니다.
해결책? 그들이 양식을 할 수 있도록 허용하십시오. 양식을 제출할 때 ... 작업을 시작하고 기다리라는 다른 페이지로 안내합니다.
중간의 페이지에 실제로 작업을 시작하는 데 필요한 양식 데이터가있는 위치입니다. 그러나 WAIT 페이지에는 javascript 히스토리 파괴가 포함되어 있습니다. 따라서 그들은 원하는 모든 대기 페이지를 다시로드 할 수 있으며 WAIT 페이지에는 WAIT 자체에 필요한 양식 데이터 만 포함되어 있으므로 백그라운드에서 시작하도록 원래 작업을 트리거하지 않습니다.
이해가 되길 바랍니다.
히스토리 삭제 기능은 또한 BACK을 클릭 한 다음 새로 고치는 것을 방지했습니다.
비영리 단체가 해체 될 때까지 매우 매끄럽고 수년 동안 훌륭하게 작동했습니다.
예 : FORM ENTRY-모든 정보를 수집하고 제출하면 백엔드 작업이 트리거됩니다.
양식 항목의 응답-정적 대기 페이지 및 / 또는 POST / GET을 다른 양식 (대기 페이지)으로 리디렉션하는 HTML을 반환합니다.
WAIT PAGE-대기 페이지와 관련된 FORM 데이터와 가장 최근 기록을 삭제하는 자바 스크립트 만 포함합니다. (-1 OR -2)와 같이 가장 최근 페이지 만 삭제하지만 원래 FORM 항목 페이지로 돌아갈 수 있습니다.
WAIT 페이지에 있으면 원하는만큼 REFRESH를 클릭 할 수 있으며 백엔드에서 원래 FORM 작업을 생성하지 않습니다. 대신 WAIT 페이지는 항상 작업 상태를 확인할 수 있도록 META 시간이 지정된 새로 고침 자체를 포함해야합니다. 작업이 완료되면 대기 페이지에서 원하는 위치로 리디렉션됩니다.
수동으로 REFRESH를 수행하는 경우 ... 그들은 단순히 작업 상태를 한 번 더 확인하는 것입니다.
도움이되기를 바랍니다. 행운을 빕니다.