Le code d'Internet a été légèrement modifié et la classe de cache est réellement utilisée. .
Enregistrez le code en tant que, par exemple, pic.asp
Utilisation: http://www.xxx.com/pic.asp?url=http://www.aaaa.com/log.gif
Non seulement 163, mais aussi de nombreuses photos d'antifères peuvent être réalisées.
<%
'Jugement du vol de liens
'IFinstr (request.servervariables ("http_referrer"), "http: //" & request.servervariables ("server_name") & "") = 0Then
'Response.Write "Lien illégal"
'Response.end
'Endif
Dimurl, corps, mycache
url = request.querystring ("url")
SetMycache = newCache
mycache.name = "picindex" & url
Ifmycache.validthen
corps = mycache.value
Autre
corps = getwebdata (URL)
mycache.addbody, dataeadd ("d", 1, maintenant)
Endire
IFerr.Number = 0Then
Réponse.charset = "utf-8"
Response.ContentType = "Application / Octet-Stream"
Réponse.binarywritebody
Réponse.flush
Autre
Wscript.echoerr.description
Endire
'Obtenez des données
PublicFunctionTgetWebdata (ByValStrurl)
Dimcurlpath
curlpath = mid (strurl, 1, instr (8, strurl, "/"))
Diable
SetRetrieval = server.createObject ("Microsoft.xmlhttp")
Avec un peu de temps
.Open "Get", Strurl, False, "", ""
.SetRequestHeader "référente", curlpath
.Envoyer
Getwebdata = .ResponseBody
Fin
SetRetrieval = rien
Finition de fin
'Cache Cache
cache de classe
Contenu privateobj'cache
Temps d'expiration d'expiration privé
PrivateExpirememeName'expiration Time Application Name
PrivateCachename'cache Content Nom de l'application
PrivatePath'url
PRIVATESUBCLASS_INITIALIZE ()
path = request.servervariables ("url")
Path = Left (chemin, instrrev (chemin, "/"))
fin
PRIVATESUBCLASS_TERMINE ()
fin
publicpropertygetbleblepty
'Est-ce vide
ifSempty (obj) alors
Blempty = True
autre
Blempty = false
endire
endproperty
publicpropertygetvalid
'S'il est disponible (expiré)
ifSempty (obj) ornotisdate (expiration) puis
valide = faux
ElseIfcdate (Expiretime) <maintenant
valide = faux
autre
valide = vrai
endire