[removed] Listing File and Folder Structure

前端 未结 3 1250
梦毁少年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:01

    CGI won't be a solution either, as it only has access to the filesystem of your server, not that of the client visiting your site. The only way to access your client's filesystem from javascript seems to be the File API, which apparently is not implemented by many browsers.

    0 讨论(0)
  • 2020-12-10 09:17

    It's a cludge but you could resort to a java applet or the dreaded active-x control.

    0 讨论(0)
  • 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 <input type="file"> 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.
    0 讨论(0)
提交回复
热议问题