인터넷의 코드는 약간 수정되었으며 캐시 클래스가 실제로 사용됩니다. .
예를 들어 Pic.asp와 같은 코드를 저장하십시오
사용 : http://www.xxx.com/pic.asp?url=http://www.aaaaa.com/log.gif
163뿐만 아니라 도난 방지 사진도 실현 될 수 있습니다.
<%
'링크 도난 판단
'ifinstr (request.servervariables ( "http_referer"), "http : //"& request.servervariables ( "server_name") & ") = 0then
'Response.Write "불법 링크"
'응답. 엔드
'endif
Dimurl, Body, Mycache
url = request.querystring ( "url")
setmyCache = NewCache
mycache.name = "picindex"& url
ifmycache.validthen
body = mycache.value
또 다른
body = getwebdata (url)
mycache.addbody, dateadd ( "d", 1, 지금)
endif
iferr.number = 0then
response.charset = "utf-8"
응답 .ContentType = "Application/Octet-stream"
응답 .BinaryWriteBody
응답. 플러시
또 다른
wscript.echoerr.description
endif
'데이터 가져 오기
PublicFunctionGetWebData (ByValStrurl)
DIMCURLPATH
curlpath = mid (Strurl, 1, Instr (8, Strurl, "/"))))
Dimretrieval
setretRieval = server.createObject ( "microsoft.xmlhttp")
retrieval
. "get", strurl, false, "", ",", "," "
.SetRequestHeader "Certer", CurlPath
.보내다
getWebData = .ResponseBody
끝
setretrieval = 아무것도
최종 기능 장애
'캐시 클래스
클래스 캐시
privateobj'cache 컨텐츠
privateexpiretime'expiration time
PrivateExpiretImename'Expiration Time Application Name
PrivateCachename'Cache 컨텐츠 응용 프로그램 이름
PrivatePath'Url
privatesubclass_initialize ()
Path = request.servervariables ( "url")
path = 왼쪽 (Path, Instrev (Path, "/"))
Endsub
privatesubclass_terminate ()
Endsub
PublicpropertygetBlempty
'비어 있습니다
그런 다음 ifsempty (obj)
blempty = true
또 다른
blempty = false
endif
엔드 프로페티
PublicpropertygetValid
'사용 가능한지 (만료)
ifsempty (obj) ornotisdate (expiretime)
유효 = 거짓
elseifcdate (expiretime) <nowthen
유효 = 거짓
또 다른
유효 = 참
endif