2017-05-15 1 views
-1

ng file upload 지시어 사용 허용 된 파일 형식 목록을 지정하려면 ngf-accept를 사용하고 있습니다. 이로 인해 많은 파일 형식이 허용되지 않고 업로드 대화 상자에 회색으로 표시되지만 여전히 .js 또는 .sh 확장명을 가진 파일을 업로드 할 수 있습니다.ng 파일 업로드로 JavaScript 파일 업로드 방지

허용 된 파일 목록과 함께 다음 링크에 지시문을 추가했습니다.

<a ng-model="file" data-nodrag ngf-select="openUploadModal($file, this)" ng-show="this.$nodeScope.$modelValue.type === 'folder'" ngf-accept="'image/*,video/*,audio/*,.pdf,.txt,.doc,.docx,.xls,.xlsx'"> 

문제는 .txt의 허용 값에서 비롯됩니다. '.txt'확장자를 제거하면 .js 및 .sh 파일도 사용할 수 없게됩니다. 외관상으로는 this is due to a bug affecting Mac users only, 그러나 이것의 주위에 어떤 방법 있는가?

+0

상기 플러그인은 사용자가 클라이언트 측 보호를 건너 뛰고 서버가 동일한 엔드 포인트를 통해 서버에 직접 허용하는 모든 내용을 업로드하지 못하도록합니다. –

+0

예, 서버 측 보호 기능이 있지만 API를 사용하지 않는 사람들을 위해 클라이언트 측 오류가 발생하지 않도록하고 싶습니다. –

답변

0

ngf-accept가 아니라 ngf-pattern을 시도한 다음 '!'를 사용할 수 있습니다.

<a ng-model="file" data-nodrag ngf-select="openUploadModal($file, this)" ng-show="this.$nodeScope.$modelValue.type === \'folder\'" ngf-pattern="'image/*,video/*,audio/*,.pdf,.txt,.doc,.docx,.xls,.xlsx,!.js,!.sh'"> 
관련 문제