现用方法:已知test.png在HTTP服务器上的URL,通过wininet已实现下载功能。
想要修改之处:从服务器下载test.png前,只知道图片名为test.png,却不知道test.png在HTTP服务器上的URL。
问:怎么样获得test.png在HTTP服务器上的URL?使用MFC
自己已经考虑过的方法:CHttpFile::GetFileURL() 但此方法是在成功调用SendRequest()或OpenURL()之后才可以使用的。而要使用SendRequese()或OpenURL,需已知test.png在HTTP服务器上的URL。这与未知test.png在HTTP服务器上的URL前提矛盾。
求道友解答!
7 个解决方案
#1
你这个问题问得没人能回答。。。。首先URL地址的结构其实也跟文件路径一样,你给一个文件名,怎么可能知道在哪个目录。 当然也可以通过搜索方式便利出 但是如果有多个同名文件,你就无法区分了 。。
#2
换个方法:我给用socket给服务器发个消息,然后服务器把我想要的URL发给我。我用CString接收。可以实现吗?
如果可以实现,如何实现?服务器如何预先保存我所需的URL?
#3
在线等……
#4
哎~ 问题复杂了。
最简化的提问:使用MFC,如何获得文件在HTTP服务器上的URL?
最简化的提问:使用MFC,如何获得文件在HTTP服务器上的URL?
#5
这样问就简单了,可以实现的,首先在HTTP服务器设置的时候设置一个专门的目录保存图片,然后同一个目录下的文件名称肯定是唯一的,那么http地址也是可以确定的,比如设置的http主目录下有个image目录,那么http地址前面肯定是固定的 http://ip地址也可以是域名/image/。这个时候可以通过socket接收客户端请求的文件名(可以通过http请求返回也可以没必要弄socket),服务器就可以直接在原来的http地址后面加上文件名即可。
#6
服务器目录设定是可以实现的,例如我指定:http://127.0.0.1/image/test.png
也就是说我已知这个路径,然后通过HTTP请求,获取此路径的URL?
如果是,请问MFC用什么去根据路径获得URL? 是GetFileURL()?
然后,弱弱的问一句,服务器上文件的路径和URL不是同一个概念吗?他俩有区别吗?
也就是说我已知这个路径,然后通过HTTP请求,获取此路径的URL?
如果是,请问MFC用什么去根据路径获得URL? 是GetFileURL()?
然后,弱弱的问一句,服务器上文件的路径和URL不是同一个概念吗?他俩有区别吗?
#7
好吧,我理解错了。
明白了,就是我向服务器发送请求,服务器反馈给我文件URL。
#1
你这个问题问得没人能回答。。。。首先URL地址的结构其实也跟文件路径一样,你给一个文件名,怎么可能知道在哪个目录。 当然也可以通过搜索方式便利出 但是如果有多个同名文件,你就无法区分了 。。
#2
换个方法:我给用socket给服务器发个消息,然后服务器把我想要的URL发给我。我用CString接收。可以实现吗?
如果可以实现,如何实现?服务器如何预先保存我所需的URL?
#3
在线等……
#4
哎~ 问题复杂了。
最简化的提问:使用MFC,如何获得文件在HTTP服务器上的URL?
最简化的提问:使用MFC,如何获得文件在HTTP服务器上的URL?
#5
这样问就简单了,可以实现的,首先在HTTP服务器设置的时候设置一个专门的目录保存图片,然后同一个目录下的文件名称肯定是唯一的,那么http地址也是可以确定的,比如设置的http主目录下有个image目录,那么http地址前面肯定是固定的 http://ip地址也可以是域名/image/。这个时候可以通过socket接收客户端请求的文件名(可以通过http请求返回也可以没必要弄socket),服务器就可以直接在原来的http地址后面加上文件名即可。
#6
服务器目录设定是可以实现的,例如我指定:http://127.0.0.1/image/test.png
也就是说我已知这个路径,然后通过HTTP请求,获取此路径的URL?
如果是,请问MFC用什么去根据路径获得URL? 是GetFileURL()?
然后,弱弱的问一句,服务器上文件的路径和URL不是同一个概念吗?他俩有区别吗?
也就是说我已知这个路径,然后通过HTTP请求,获取此路径的URL?
如果是,请问MFC用什么去根据路径获得URL? 是GetFileURL()?
然后,弱弱的问一句,服务器上文件的路径和URL不是同一个概念吗?他俩有区别吗?
#7
好吧,我理解错了。
明白了,就是我向服务器发送请求,服务器反馈给我文件URL。