Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การสร้าง Proxy Web Server ใน Python


Proxy Server อยู่ระหว่าง Client และ Server จริง มันรับคำขอจาก Client ส่งไปยัง Server จริง และเมื่อได้รับ Response จาก Server จริง จะส่ง Response กลับไปยัง Client มีหลายเหตุผลในการใช้ Proxy เช่น การซ่อน IP Address ของ Server, ปรับปรุงประสิทธิภาพ หรือเพิ่มความปลอดภัย ฯลฆ ในบทความนี้ เราจะดูวิธีสร้าง Proxy Server 简单ด้วย Python

โมดูลสามตัวคือ SimpleWebSocketServer, SimpleHTTPSServer และ urllib สามารถนำมาใช้ได้ ด้านล่างเราจะเห็นวิธีสร้าง Python Class โดยใช้เมธอดที่มีในโมดูลเหล่านี้ และส่ง Instance ของ Class นั้นให้ SimpleWebSocketServer จากนั้นเราเริ่มเซิร์ฟเวอร์ทำงานด้วยเมธอด Serve Forever ที่มีอยู่กับคลาส

ตัวอย่าง

import SimpleWebSocketServer
import SimpleHTTPSServer
import urllib
PORT = 9012
class JustAProxy(SimpleHTTPSServer.SimpleWebSocketServer):
    def do_GET(self):
        url=self.path[1:]
        self.send_response(200)
        self.end_headers()
        self.copyfile(urllib.urlopen(url), self.wfile)
httpd = SimpleWebSocketServer.SimpleWebSocketServer('localhost',PORT,JustAProxy)
print ("Proxy Srever at" , str(PORT))
httpd.serveforever()

ผลลัพธ์

การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้ −

Proxy Srever at 9012