다음 서비스 호출을 통해 서버에서 파일을 다운로드 할 수 있습니다. 현재 PDF가 새 탭/창에서 열리 며 다른 모든 문서 유형이 다운로드됩니다.팝업 차단기가없는 새 탭/창에 PDF를 다운로드하는 방법은 무엇입니까?
내가 지금 당면하고있는 문제는 팝업 차단기가 PDF를 차단하고 있다는 것입니다. 이 주위에 어떤 방법이 있습니까?
return formService.getForm(params)
.$promise
.then(response => {
var blob = new Blob([response.data], {
type: response.responseType
});
var fileUrl = (window.URL || window.webkitURL).createObjectURL(blob);
if (response.responseType === 'application/pdf') {
window.open(fileUrl);
} else {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none"
a.href = fileUrl;
a.download = formName;
a.target = "_blank";
a.click();
window.URL.revokeObjectURL(fileUrl);
}
})
.catch(error => {
console.error(`Error downloading form '${formName}' `, error);
});
클릭 이벤트가 강제로 발생하므로 팝업 차단기가 사용자가 수행 한 행동이 아님을 제안합니다. 사용자가 창을 열고 다시 테스트하는 클릭 작업을 수행하도록하십시오. – Mike