特色栏目

ASP源码

PHP源码

.NET源码

JSP源码

游戏频道
专题合集
关闭菜单
首页> ASP教程> Web在线代理(Asp版)

Web在线代理(Asp版)

时间:2009-06-23 17:01:33 作者:互联网
asp写Web代理软件,可以用作突破网关限制等,主要是为了配合Ajax使用的(因Firefox存在跨域访问的问题) 版本 0.1 作者 LlinZzi
功能
判断网站编码,支持任何语言
超连接自动转换
附带一个远程下载图片的函数
未解决问题,目前只能用来代理网站代码,图片等其他数据的代理转发尚未完成。
[复制此代码]CODE:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<%R***onse.Charset = "utf-8"%>
<%
Se***r.ScriptTimeout=9999999;
var Surl = String(Re***st.QueryString("url"));
if(Surl == "undefined"){
Re***nse.Write("

Asp代理 by Llinzzi

");
Re***nse.Write("
");
Re***nse.Write("
");
Re***nse.Write("

请输入网址

");
Re***nse.Write("

");
Re***nse.Write("

");
Re***nse.Write("
");
}
else if(Surl == ""){
Re***nse.Write("

Asp代理 by Llinzzi

");
Re***nse.Write("
");
Re***nse.Write("

地址为空,请格式输入 如 ww***om.com">ww***om.com

");
Re***nse.Write("
");
}
else{
Surl = (Su***substr(0,7) != "http://") ? "http://"+Surl : Surl;
Re***nse.Write(send_request(Surl));
}
function send_request(url) {
    var codedtext;
    http_request = Se***r.CreateObject("Mi***soft.XMLHTTP");
    try{
    http_requ***Open("GET",url,false);
    http_requ***Send(null);
    }
    catch(e)
    {
    Re***nse.Write(e.***cription);
    }
    if (http_requ***ReadyState == 4){
        //自动判断编码开始
        var charresult = http_requ***ResponseText.match(/CharSet=(S+)"/i);
        if (charresult != null){
        var Cset = charresult[1];
        }else{Cset = "utf-8"}
        //自动判断编码结束
        codedtext = bytesToBSTR(http_requ***Responsebody,Cset);
        }else{
        codedtext = "Erro";
        }
        //替换超连接
        codedtext = co***text.replace(/href="/?/ig,"href=""+url+"/");
        codedtext = co***text.replace(/(1s***ergate.asp?url=
");
    return(codedtext);
}
function bytesToBSTR(body,Cset){
    var objstream;
    objstream = Se***r.CreateObject("Ad***.Stream");
    ob***ream.Type = 1;
    ob***ream.Mode = 3;
    ob***ream.Open();
    ob***ream.Write(body);
    ob***ream.Position = 0;
    ob***ream.Type = 2;
    ob***ream.Charset = Cset;
    bytesToBSTR = ob***ream.Readtext;
    ob***ream.Close;
    return(bytesToBSTR);
}
function SaveRemoteFile(LocalFileName,RemoteFileUrl){
    var Retrieval,Ads;
    Retrieval = Se***r.CreateObject("Mi***soft.XMLHTTP");
    Re***eval.Open("GET",RemoteFileUrl,false);
    Re***eval.Send(null);
    if (Re***eval.ReadyState == 4){
    Ads = Se***r.CreateObject("Ad***.Stream");
    Ads.Type = 1;
    Ads.Open();
    Ad***rite(Re***eval.Responsebody);
    Ad***aveToFile(Se***r.MapPath(LocalFileName),2);
    Ad***ancel;
    Ad***lose;
    }
}
//SaveRemoteFile("aa.gif","/images/XrssFile/2007-1/12/2007112124640411.gif");
%>
相关文章 最新文章

相关应用

热门文章

猜你喜欢

返回顶部