기본적으로 HTML5 를 완전히 지원하는 브라우저에서는 서버 사이드를 거치지 않고, 바로 로컬에서 다운로드 처리합니다.

그러나 경우에 따라서, 서버 사이드로 보낸 후 서버 사이드 컨트롤러에서 다운로드 처리를 하고 싶을 때가 있습니다.

예를 들면, AUIPivot에서 작성한 엑셀 양식을 서버 사이드로 보낸 후 서버 사이드에서 엑셀에 암호를 넣는다 던지, 추가적으로 행을 삽입한다던지, 이미지를 삽입한다던지 할 수 있습니다.

즉, AUIPivot 에서 지원하는 기본 엑셀에서 자바 POI 라이브러리등을 활용하여 엑셀 Sheet 편집을 할 수 있습니다.

또는 기본적으로는 로컬 다운로드로 처리하고, IE<10 으로 접속한 경우에는 서버 사이드 거쳐 다운로드 하도록 작성할 수 있습니다.

■ 로컬에서 바로 다운로드 설정하는 방법 (FileSaver.js이용, MIT 라이센스)

<!-- 브라우저 다운로딩 할 수 있는 JS 추가 --> <!-- 정품 및 평가판 압축 해제 후, export_server_samples 폴더(또는 pdfkit 폴더) 안에 있음 --> <script type="text/javascript" src="./js_20210308/FileSaver.min.js"></script> ..... function exportToLocal() { // 로컬 다운로드 가능 여부 if(AUIPivot.isAvailableLocalDownload(myPivotID)) { // 로컬에서 바로 내보내기 실행 AUIPivot.exportToXlsx(myPivotID); } else { // HTML5를 완전히 지원하지 않는 브라우저는 서버로 전송하여, 다운로드 처리 exportToServer(); } };

■ 작성된 엑셀을 서버로 전송하여 다운로드 설정하는 방법

function exportToServer() {
	// 그리드가 작성한 엑셀, CSV 등의 데이터를 다운로드 처리할 서버 URL을 지시합니다.
	// 정품 및 평가판 압축 해제 후, export_server_samples 폴더 안에 PHP, JSP, ASP, ASP.NET 용 소스가 존재함
	AUIPivot.setProp(myPivotID, "exportURL", "./server_script/export.jsp");

	// 내보내기 실행
	AUIPivot.exportToXlsx(myPivotID, {
		// 지정된 exportURL (./server_script/export.php) 로 내보내기 합니다.
		// postToServer 를 true 설정하지 않은 경우, 기본적으로 로컬 다운로딩 처리됩니다.
		"postToServer" : true
	});
};

참고 : 최신 브라우저(크롬, IE=11, Edge 등 최신 버전)을 사용하는 경우, 성능적으로 로컬에서 바로 다운로드가 유리합니다.

로컬(Local)에서 바로 다운로드 하기 서버(Server)로 보낸 후 다운로드 하기