안녕하세요~!!자바스크립트로 파일 읽어오기를 찾아보니 전부 input type=file 을 사용해서 윈도우 탐색기를 이용해 파일을 선택해서 읽어오더군요그런 방식이 아닌 애초에 파일 경로명을 이용해 파일을 읽어오는 방법은 없나요?(img태그의 src 처럼 경로명으로...)감사합니다~!!
웹 페이지에서 클라이언트의 파일 경로(c:\Users\...readme.txt 같은 형식)를 통한 파일 읽기는 보안상으로 불가능합니다.만약 이게 가능하다면, 웹 페이지에서 사용자 모르게 사용자의 파일에 접근할 수 있게 됩니다.C:\Program Files 등 고정적인 경로 내부의 폴더나 파일에 접근하여 클라이언트가 원치 않는 동작을 할 수 있는 셈이죠. 따라서 파일은 반드시 input을 통해서만 다룰 수 있습니다.
답은input type file 없이도 아주 잘 됩니다.단, 잘 된다는게사용자의 디스크 드라이브에서 원하는 파일을 바로 액세스할 수 있다는 얘기는 아닙니다.1. input type file 을 써서 파일 선택 대화상자를 통해 불러오든지2. 사용자가 파일을 지정된 영역으로 끌어다 놓든지(jQuery 로 줄 수 있는 이벤트 중에 'drop' 이라는 이벤트가 있습니다. div 같은곳에다가 저 drop 이벤트 달아놓고, 사용자가 파일을 드래그해 놓아서 이벤트 호출되면 이벤트 함수에서 파일을 읽을 수 있습니다.)바닐라맛 자바스크립트로도 가능합니다.https://webisfree.com/2019-11-22/html5%EC%9D%98-%EB%93%9C%EB%9E%98%EA%B7%B8%EC%95%A4%EB%93%9C%EB%9E%8D-%EA%B5%AC%ED%98%84-%EB%B0%A9%EB%B2%95-%EB%B0%8F-%EC%98%88%EC%A0%9C-drag-and-drop3. 동일 서버에서 파일 다운로드 내려준 파일이거나(AJAX에 쓰이는 XMLHttpRequest 로 파일 다운로드도 수행할 수 있습니다. 이걸로 파일 다운로드 시킨 파일에는 엑세스 가능합니다. 물론 다운로드 시켜드린 파일을 다시 읽을 필요야 없겠지만요.) 셋중 하나는 해야 됩니다.