[removed] Listing File and Folder Structure

前端 未结 3 1251
梦毁少年i
梦毁少年i 2020-12-10 08:43

As I have read, it is not easy for JavaScript to modify files on client PC. I am working on a web based file manager and would need to know the following:

  • Can
3条回答
  •  天涯浪人
    2020-12-10 09:23

    Browser JS reading client PC's files: Depends

    For a security reason, you can't access the files on the user's PC without the user's consent.

    That's why the FileReader API is created around the file input box and a drag-n-drop area since the whole idea is to "access the file with user's consent". Without the user intentionally putting the file for access, you can't access it at all.

    Server-side JS reading own server's files: Yes

    As for server, if you meant access the server using server-JS (NodeJS or Rhino), yes you can (How else would it serve webpages anyway?).

    Browser JS reading own server's files: Depends

    Accessing the server from the browser using JS works if you have an API to read files from it.

    Browser JS reading other server's files: Yes, with a catch

    To access other server's files without some API, you could resort to creating a web scraper or a web-spider that runs server-side (since browser can't cross domains due to the same origin policy) and have an API exposed to your browser.

    However:

    • you can't crawl to all files as some may be restricted from outside access.
    • the public appearance of the structure could be different from the internal structure, especially if the site uses segmented url scheme
    • sites using query strings to generate pages cannot be crawled easily due to the number of permutations it could make, thus some pages might be unreacheable.

提交回复
热议问题