我正在Java应用程序中通过I / O-streaming下载各种文件。只要我有一个包含文件名的完整URL路径,接收和保存这些文件就可以正常工作,但是如何找到索引文件的名称(例如,在Apache的DirectoryIndex
中定义)域? HTTP标头不提供此信息,URLConnection
方法也不提供。
非常感谢!
好吧 S上。
答案 0 :(得分:5)
据我所知,无法检索此信息。 HTTP规范没有提供它,我认为这不是一件坏事。您的客户请求URL“/”,由Web服务器决定如何处理,没有义务返回文件名。
值得指出的是(我确定你已经知道了,但以防万一)因为网址看起来像/somedir/somefile.html
,这并不意味着实际< / em>正在提供的文件。它可以通过代理服务到另一个主机,mod_rewrite等 - 换句话说,该名称是任意的,并不一定与磁盘上的物理名称有任何关系。
简而言之,我认为您最好的选择是选择默认文件名,例如对于那些情况index.html
并坚持下去。
答案 1 :(得分:1)
唯一的出路是: