网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP实例
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.利用ASP制作EXECL报表方法(一).
.ASP实现播放Flash的例子.
.一个简单的网上书城的例子(五).
.用ASP、VB和XML建立互联网应用程.
.深入研究“用ASP上载文件”(二)&.
.使用xmlhttp为网站增加股市行情查.
.用asp.net写的论坛程序--浏览贴及.
.通过事例学习.net的WebForms技术.
.1栏分页显示(附显示的形式前页,.
.让自定义文件下载支持断点续传.
.用Asp备份与恢复SQL Server 数据.
.制作我们自己的Ebay(拍卖系统)(1).
.一个简单的网上书城的例子(七).
.利用ASP在客户端注册DLL文件.
.购物车范例(购物车页面 ).
.用ASP.NET建立简单的Web Form&nb.
.ASP图形计数器设计详解.
.用ASP开发一个在线考试程序(四).
.产生随机密码的函数.
.asp生成excel报表.

Web在线代理(Asp版)

发表日期:2007-10-15


asp写Web代理软件,可以用作突破网关限制等,主要是为了配合Ajax使用的(因Firefox存在跨域访问的问题) 版本 0.1 作者 LlinZzi
功能
判断网站编码,支持任何语言
超连接自动转换
附带一个远程下载图片的函数
未解决问题,目前只能用来代理网站代码,图片等其他数据的代理转发尚未完成。
[复制此代码]CODE:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<%Response.Charset = "utf-8"%>
<%
Server.ScriptTimeout=9999999;
var Surl = String(Request.QueryString("url"));
if(Surl == "undefined"){
Response.Write("<p style=\"font-size:9pt;margin:30px;padding:10px;text-align:center;background-color:#FFCCCC;border: 1px solid #999999;\">Asp代理 by Llinzzi</p>");
Response.Write("<div style=\"font-size:9pt;margin:30px;text-align:center;background-color:#FFFFCC;border: 1px solid #999999;\">");
Response.Write("<form action=\"#\" method=\"get\" >");
Response.Write("<p style=\"font-size:9pt;margin:5px;text-align:center;\">请输入网址</p>");
Response.Write("<p><input style=\"background-color: #FFCCCC;border: 1px solid #999999;\" type=\"text\" name=\"url\"></p>");
Response.Write("<p><input style=\"background-color: #FFCCCC;border: 1px solid #999999;\" type=\"submit\"  value=\"GoWeb\"></p>");
Response.Write("</div>");
}
else if(Surl == ""){
Response.Write("<p style=\"font-size:9pt;margin:30px;padding:10px;text-align:center;background-color:#FFCCCC;border: 1px solid #999999;\">Asp代理 by Llinzzi</p>");
Response.Write("<div style=\"font-size:9pt;margin:30px;text-align:center;background-color:#FFFFCC;border: 1px solid #999999;\">");
Response.Write("<p>地址为空,请格式输入 如 www.tom.com </p>");
Response.Write("</div>");
}
else{
Surl = (Surl.substr(0,7) != "http://") ? "http://"+Surl : Surl;
Response.Write(send_request(Surl));
}
function send_request(url) {
    var codedtext;
    http_request = Server.CreateObject("Microsoft.XMLHTTP");
    try{
    http_request.Open("GET",url,false);
    http_request.Send(null);
    }
    catch(e)
    {
    Response.Write(e.description);
    }
    if (http_request.ReadyState == 4){
        //自动判断编码开始
        var charresult = http_request.ResponseText.match(/CharSet=(\S+)"/i);
        if (charresult != null){
        var Cset = charresult[1];
        }else{Cset = "utf-8"}
        //自动判断编码结束
        codedtext = bytesToBSTR(http_request.Responsebody,Cset);
        }else{
        codedtext = "Erro";
        }
        //替换超连接
        codedtext = codedtext.replace(/href="\/?/ig,"href=\""+url+"/");
        codedtext = codedtext.replace(/(<a.*href=")/ig,"$1servergate.asp?url=");
    return(codedtext);
}
function bytesToBSTR(body,Cset){
    var objstream;
    objstream = Server.CreateObject("Adodb.Stream");
    objstream.Type = 1;
    objstream.Mode = 3;
    objstream.Open();
    objstream.Write(body);
    objstream.Position = 0;
    objstream.Type = 2;
    objstream.Charset = Cset;
    bytesToBSTR = objstream.Readtext;
    objstream.Close;
    return(bytesToBSTR);
}
function SaveRemoteFile(LocalFileName,RemoteFileUrl){
    var Retrieval,Ads;
    Retrieval = Server.CreateObject("Microsoft.XMLHTTP");
    Retrieval.Open("GET",RemoteFileUrl,false);
    Retrieval.Send(null);
    if (Retrieval.ReadyState == 4){
    Ads = Server.CreateObject("Adodb.Stream");
    Ads.Type = 1;
    Ads.Open();
    Ads.Write(Retrieval.Responsebody);
    Ads.SaveToFile(Server.MapPath(LocalFileName),2);
    Ads.Cancel;
    Ads.Close;
    }
}
//SaveRemoteFile("aa.gif","/images/XrssFile/2007-1/12/2007112124640411.gif");
%>
上一篇:根据IP地址自动判断转向分站的代码 人气:8350
下一篇:asp实现同网站不同目录帮定不同域名 人气:7451
浏览全部Web在线代理的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐