사용자가 내 사이트의 버튼을 클릭하면 페이지의 특정 부분이 새로 고쳐 지지만 전체 섹션을 렌더링하는 데 시간이 걸립니다. 전체 섹션이 끝날 때까지 기다리는 것이 아니라 실시간으로 섹션의 파트를 표시/출력 할 수 있습니까? html 콘텐츠에 대한 ajax 요청으로 보내는 경우 어떻게해야합니까? 감사합니다출력 버퍼링 및 AJAX
답변
AJAX 호출 (jQuery를 사용하는 경우)에서 cache: true
을 설정하는 것이 좋습니다. 그리고 어떤 방법 으로든 HTTP 응답 헤더를 설정하려고 할 것입니다. Here are some examples.cache-control
헤더와 expires
등을 설정하면 변경되지 않은 경우 AJAX 요청이 캐시에서로드됩니다. 이것은 크게 속도를 올릴 것입니다.
빠른 예 :
if (!headers_sent()) {
// seconds, minutes, hours, days
$expires = 60*60*24*14;
header('Pragma: public');
header('Cache-Control: maxage=' . $expires);
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $expires) . ' GMT');
}
참고 :이 그냥 GET, POST 요청 작동하지 않습니다.
마찬가지로 AJAX 요청을 캐싱하는 것이 좋습니다. 게다가, 내가 생각하기에 애플리케이션을 더 빠르게 보이게하려면 AJAX로 콘텐츠를 다시로드하면서 사용자에게 progressbar을 표시하는 것입니다.
새로운 HTML5'
hmmm ... 그렇다면 아약스를 통해 처리되는 동안 콘텐츠를 표시 할 방법이 없습니까? – Ben
그 사실을 알고 있지 않다면, 아무 전문적인 사이트를위한 클라이언트의 사이트를위한 것이라면 HTML5를 사용하지 말고, 아직 충분히 지원하지 못한다면 –
Pagelets 기술을 구현할 수 있습니다.
index.html
Ajax -> load content from PHP script which outputs the navigation bar
Ajax -> load content from PHP script which outputs the body
을 그리고 여러 가지 다른 아약스 사이트의 각각 다른 부분을로드 호출이 : 기본적으로 아래 같은 방법으로이 일을 할 수있다. 그러나 이것은 사용자의 브라우저가 만들어야하는 HTTP 요청의 양을 증가시키는 단점이 있습니다.
다른 부분이 페이지의 나머지 부분과 별도로 생성 될 수 있지만 이것은 추정됩니다. 모든 콘텐츠를 동시에 생성해야하는 경우이 기술을 사용하지 않아도됩니다.
이 ("BigPipe"라는 이름의 페이스 북 프로젝트) 좋은 읽기입니다 : http://www.facebook.com/note.php?note_id=389414033919
- 1. PHP 출력 버퍼링
- 2. PHP 출력 버퍼링 중지
- 3. 해제 출력 버퍼링 Zend_View
- 4. 출력 버퍼링 문제 - PHP
- 5. PHP 출력 버퍼링 검사?
- 6. PHP에서 출력 버퍼링 관련 문제
- 7. PHP 명령 줄에서 버퍼링 출력
- 8. 텍스트 파일로 PHP 출력 버퍼링
- 9. 출력 버퍼링 표시 오류 알림
- 10. 출력 버퍼링 제어를 사용하는 방법은 무엇입니까?
- 11. 왜 버퍼링 된 출력 및 메모리 할당에 결함이 있습니까?
- 12. Kohana 3 명령 줄 출력 버퍼링?
- 13. Perl 이상한 버퍼링 된 출력 동작
- 14. 버퍼링 된 라인으로 동시 UART 출력
- 15. PHP에서 페이지로드 시간을 늘리기 위해 '출력 버퍼링'
- 16. 버퍼링 된 리더 출력 최적화에 도움이 필요합니다.
- 17. 외부 클래스 종속성이있는 중첩 출력 버퍼링 [제발]
- 18. PHP 출력 버퍼링 - 좋은 생각 같지 않습니까?
- 19. BackgroundAudioPlayer- 버퍼링 및 MediaStreamSource
- 20. jQuery AJAX 및 IE8 출력 "잘못된 인수"
- 21. PHP의 다이()가 얼마나 안전합니까? (출력 버퍼링 포함 및 출력 없음)
- 22. php ajax 페이지 출력
- 23. AJAX 프로그레시브 출력
- 24. HTML5 비디오 currentTime 및 버퍼링
- 25. PHP에서 출력 버퍼링 중에 오류를 계속 기록 할 수 있습니까?
- 26. 혜성 서블릿 용 tomcat 6에서 출력 버퍼링 사용 안 함
- 27. 버퍼링 된 리더 및 소켓 사용
- 28. Perl - 외부 프로세스에서 stdout으로 직접 출력 (버퍼링 방지)
- 29. 출력 버퍼링 콜백에서 함수가 호출되는지 확인하는 방법은 무엇입니까?
- 30. AJAX 진행 : 셸에서 출력 읽기
내가 사용자의 브라우저에있는 특정 HTML 내용을 잡을 수 있습니까? 어떻게하면 httpd.conf 파일로이 작업을 수행 할 수 있습니까? 또한 내 콘텐츠가 동적이어서 캐싱이 적절한 지 확실하지 않습니다. – Ben
가능합니다. .htaccess 파일을 수정할 권한이 있습니까? 나는 아파치 설정을 직접 수정하는 대신에 이러한 설정을 변경한다고 말할 것이다. 어느 쪽이든, 내가 내 대답에 넣은 링크를 확인하십시오 (여기에 "몇 가지 예가 있습니다"). –