在ASP页面或ASPNet页面中使用VBS,我想确定创建(或修改)基于Web的远程JPG文件的日期。例如,通过FTP编辑到网站的网络摄像头。因此,使用JPG的URL,我如何才能获得该JPG的属性。
在下面的代码中,我尝试检索图像文件并将其保存到我的网站网站中,但是我在“ objADOStream.SaveToFile(strSave,2)”行中出现错误,
“System.Runtime.InteropServices.COMException:写入文件失败。”
我知道我对该文件夹有读/写权限,因为我经常在那里创建/删除.txt文件。
这是我拼凑在一起检索并保存文件的代码
dim strURL, strSave, objXMLHTTP, objADOStream, objFSO
strURL = "http://www.somewhere.com/Photo.jpg"
strSave = Server.MapPath("/xxx/photos/") & "photo.jpg"
objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
objXMLHTTP.open ("GET", strURL, false)
objXMLHTTP.send()
if err.number=0 then
if objXMLHTTP.readystate = 4 then
If objXMLHTTP.Status = 200 Then
objADOStream = CreateObject("ADODB.Stream")
objADOStream.Open
objADOStream.Type = 1
objADOStream.Write (objXMLHTTP.ResponseBody)
objADOStream.Position = 0
objFSO = Createobject("Scripting.FileSystemObject")
If objFSO.Fileexists(strSave) Then objFSO.DeleteFile (strSave)
objFSO = Nothing
objADOStream.SaveToFile (strSave,2)
objADOStream.Close
objADOStream = Nothing
End If
end if
end if
objXMLHTTP = Nothing
...谢谢RDK
答案 0 :(得分:0)
如果您只需要知道文件的最后修改日期,而不是发送GET请求,请发送HEAD请求。在您的代码中,使用GET
更改HEAD
,并在发送后获取
objXMLHTTP.getResponseHeader("Last-Modified")
服务器可能不会发送此信息,因此您无法知道此数据。