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

การสร้าง Proxy Webserver ใน Python


พร็อกซีเซิร์ฟเวอร์ตั้งอยู่ระหว่างไคลเอนต์และเซิร์ฟเวอร์จริง รับคำขอจากลูกค้า ส่งไปยังเซิร์ฟเวอร์จริง และเมื่อได้รับการตอบกลับจากเซิร์ฟเวอร์จริง จะส่งการตอบกลับกลับไปยังไคลเอนต์ มีเหตุผลมากมายที่จะใช้พร็อกซี เช่น การซ่อนที่อยู่ IP ของเซิร์ฟเวอร์ การปรับปรุงประสิทธิภาพ หรือการเพิ่มความปลอดภัย เป็นต้น ในบทความนี้ เราจะมาดูกันว่าเราจะสร้างพร็อกซีเซิร์ฟเวอร์อย่างง่ายโดยใช้ python ได้อย่างไร

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

ตัวอย่าง

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