none
关于获取服务器文件列表 RRS feed

  • 问题

  • 在IIS上部署虚拟目录或者应用程序,得到一个路径如:http://192.168.1.10/download

    如何用程序获取该路径下面的所有文件(包括子目录中的文件)列表,给予相应的权限。

    在IIS中部署web service可以实现,但是我不想用web service实现,请问还有其他方法啊?

    请各位大神指点一二,如有demo更好。谢谢。

    2013年10月16日 14:07

答案

  • 你好:

    你这个需求是不可能实现的。

    试想一下,如果客户端仅仅通过IIS服务器发布的一个url地址就可以访问到服务器目录下面的所有文件,还可以对文件权限进行操作,这是一件多么可怕的事情,客户端如果想干点坏事岂不是轻而易举。http协议是禁止这样的操作的。

    唯一可能的就是在服务端通过"Server.MapPath"这样的函数来获取到服务器的物理地址,然后列出文件名称,再通过http将这些文件信息发布。客户端通过访问iis发布的url来获取到这些信息。设置权限什么的也只有在服务端才能完成,而且IIS必须具有访问这些文件的权限才行。

    如果你需要经常访问这个服务器目录的话,你可以设置一下权限共享出来。也可以建立一个FTP服务器,将这个目录发布出来。

    共享就不需要说了,用“net use”命令通过用户名和密码登陆该服务器目录,直接用Directory.GetFiles方法就可以了。

    关于如何获取FTP目录下的文件列表,请参考这个帖子:

    http://bbs.csdn.net/topics/100157981


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2013年10月17日 9:10
    版主

全部回复

  • 你好:

    你这个需求是不可能实现的。

    试想一下,如果客户端仅仅通过IIS服务器发布的一个url地址就可以访问到服务器目录下面的所有文件,还可以对文件权限进行操作,这是一件多么可怕的事情,客户端如果想干点坏事岂不是轻而易举。http协议是禁止这样的操作的。

    唯一可能的就是在服务端通过"Server.MapPath"这样的函数来获取到服务器的物理地址,然后列出文件名称,再通过http将这些文件信息发布。客户端通过访问iis发布的url来获取到这些信息。设置权限什么的也只有在服务端才能完成,而且IIS必须具有访问这些文件的权限才行。

    如果你需要经常访问这个服务器目录的话,你可以设置一下权限共享出来。也可以建立一个FTP服务器,将这个目录发布出来。

    共享就不需要说了,用“net use”命令通过用户名和密码登陆该服务器目录,直接用Directory.GetFiles方法就可以了。

    关于如何获取FTP目录下的文件列表,请参考这个帖子:

    http://bbs.csdn.net/topics/100157981


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2013年10月17日 9:10
    版主
  • hello,

    请用FTP.....


    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/

    2013年10月20日 17:37