เว็บตัวแทนออนไลน์ (เวอร์ชัน Asp)
ผู้เขียน:Eve Cole
เวลาอัปเดต:2009-06-23 17:01:33
ซอฟต์แวร์เว็บพรอกซีที่เขียนด้วย asp สามารถใช้เพื่อเจาะผ่านข้อจำกัดเกตเวย์ ฯลฯ ส่วนใหญ่จะใช้กับ Ajax (เนื่องจากปัญหาการเข้าถึงข้ามโดเมนใน Firefox) เวอร์ชัน 0.1 ผู้เขียน LlinZzi
ฟังก์ชันนี้จะกำหนดโค้ดของเว็บไซต์ รองรับการแปลงไฮเปอร์ลิงก์ในภาษาต่างๆ โดยอัตโนมัติ และมีฟังก์ชันที่ยังไม่ได้รับการแก้ไขสำหรับการดาวน์โหลดรูปภาพจากระยะไกล ขณะนี้สามารถใช้ได้กับโค้ดของเว็บไซต์พร็อกซีเท่านั้น และยังไม่มีการส่งต่อพร็อกซีของรูปภาพและข้อมูลอื่นๆ สมบูรณ์.
[คัดลอกรหัสนี้]รหัส:
< %@LANGUAGE="JAVASCRIPT " CODEPAGE="65001"%>
<%Response.Charset = "utf-8"%>
-
Server.ScriptTimeout=9999999;
var Surl = String(Request.QueryString("url"));
ถ้า(Surl == "ไม่ได้กำหนด"){
Response.Write("<p style="font-size:9pt;margin:30px;padding:10px;text-align:center;พื้นหลัง-สี:#FFCCCC;border: 1px solid #999999;">Asp proxy โดย ลินซี่</p>");
Response.Write("<div style="font-size:9pt;margin:30px;text-align:center;พื้นหลัง-สี:#FFFFCC;border: 1px solid #999999;">");
Response.Write("<form action="#" method="get" >");
Response.Write("<p style="font-size:9pt;margin:5px;text-align:center;">กรุณากรอก URL</p>");
Response.Write("<p><input style="พื้นหลัง-สี: #FFCCCC;border: 1px solid #999999;" type="text" name="url"></p>" );
Response.Write("<p><input style="พื้นหลัง-สี: #FFCCCC;border: 1px solid #999999;" type="submit" value="GoWeb"></p>" );
Response.Write("</div>");
-
อย่างอื่นถ้า(Surl == ""){
Response.Write("<p style="font-size:9pt;margin:30px;padding:10px;text-align:center;พื้นหลัง-สี:#FFCCCC;border: 1px solid #999999;">Asp proxy โดย ลินซี่</p>");
Response.Write("<div style="font-size:9pt;margin:30px;text-align:center;พื้นหลัง-สี:#FFFFCC;border: 1px solid #999999;">");
Response.Write("<p>The address is Empty, please enter it in the format such as www.tom.com </p>");
Response.Write("</div>");
-
อื่น{
Surl = (Surl.substr(0,7) != "http://") ? " http://"+Surl : Surl;
Response.Write (send_request (Surl));
-
ฟังก์ชั่น send_request (url) {
ข้อความที่เข้ารหัส var;
http_request = Server.CreateObject("Microsoft.XMLHTTP");
พยายาม{
http_request.Open("GET",url,false);
http_request.Send(null);
-
จับ(จ)
-
Response.Write (e. คำอธิบาย);
-
ถ้า (http_request.ReadyState == 4){
//กำหนดจุดเริ่มต้นของการเข้ารหัสโดยอัตโนมัติ
var charresult = http_request.ResponseText.match(/CharSet=(S+)"/i);
ถ้า (charresult != null){
var Cset = charresult[1];
}else{Cset = "utf-8"}
// กำหนดจุดสิ้นสุดของการเข้ารหัสโดยอัตโนมัติ
codedtext = bytesToBSTR (http_request.Responsebody, Cset);
}อื่น{
codedtext = "ผิดพลาด";
-
//แทนที่ไฮเปอร์ลิงก์
codedtext = codedtext.replace(/href="/?/ig,"href=""+url+"/");
codedtext = codedtext.replace(/(<a.*href=")/ig,"$1servergate.asp?url=");
กลับ (ข้อความที่เข้ารหัส);
-
ฟังก์ชั่น bytesToBSTR (เนื้อหา, Cset) {
var objstream;
objstream = Server.CreateObject("Adodb.Stream");
objstream ประเภท = 1;
objstream.Mode = 3;
objstream.เปิด();
objstream.เขียน(เนื้อหา);
objstream ตำแหน่ง = 0;
objstream.ประเภท = 2;
objstream.Charset = Cset;
bytesToBSTR = objstream.Readtext;
objstream.ปิด;
กลับ (bytesToBSTR);
-
ฟังก์ชั่น SaveRemoteFile (LocalFileName, RemoteFileUrl) {
var การดึงข้อมูล, โฆษณา;
การเรียกค้น = Server.CreateObject("Microsoft.XMLHTTP");
Retrieval.Open("GET",RemoteFileUrl,false);
การเรียกค้นส่ง (null);
ถ้า (Retriever.ReadyState == 4){
โฆษณา = Server.CreateObject("Adodb.Stream");
ประเภทโฆษณา = 1;
โฆษณาเปิด();
โฆษณา เขียน (การดึงข้อมูลการตอบสนองเนื้อหา);
Ads.SaveToFile(Server.MapPath(LocalFileName),2);
โฆษณายกเลิก;
โฆษณาปิด;
-
-
//SaveRemoteFile("aa.gif","/images/XrssFile/2007-1/12/2007112124640411.gif");
-