คำขอ - การจัดการการเปลี่ยนเส้นทาง
บทนี้จะดูว่าไลบรารีคำขอจัดการกับกรณีการเปลี่ยนเส้นทาง URL อย่างไร
ตัวอย่าง
import requests
getdata = requests.get('http://google.com/')
print(getdata.status_code)
print(getdata.history)
url: http://google.com จะถูกเปลี่ยนเส้นทางโดยใช้รหัสสถานะ 301 (ย้ายถาวร) ไปที่ https://www.google.com/. การเปลี่ยนเส้นทางจะถูกบันทึกไว้ในประวัติ
เอาต์พุต
เมื่อดำเนินการโค้ดด้านบนเราจะได้ผลลัพธ์ดังต่อไปนี้ -
E:\prequests>python makeRequest.py
200
[<Response [301]>]
คุณสามารถหยุดการเปลี่ยนเส้นทาง URL โดยใช้ allow_redirects = False. สามารถทำได้บน GET, POST, OPTIONS, PUT, DELETE, PATCH วิธีที่ใช้
ตัวอย่าง
นี่คือตัวอย่างในเรื่องเดียวกัน
import requests
getdata = requests.get('http://google.com/', allow_redirects=False)
print(getdata.status_code)
print(getdata.history)
print(getdata.text)
ตอนนี้ถ้าคุณตรวจสอบผลลัพธ์การเปลี่ยนเส้นทางจะไม่ได้รับอนุญาตและจะได้รับรหัสสถานะ 301
เอาต์พุต
E:\prequests>python makeRequest.py
301
[]
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>