ข้อผิดพลาดนี้ปรากฏขึ้นเมื่อเซิร์ฟเวอร์ส่งคืนข้อมูลในรูปแบบที่ไม่รองรับ
- หากต้องการแก้ไข 406 ไม่ยอมรับในบุรุษไปรษณีย์ ให้ปรับและเพิ่มพารามิเตอร์ยอมรับในคำขอของคุณ
- ในบางกรณี อาจจำเป็นต้องปรับส่วนหัวและระบุ User Agent
406 ข้อผิดพลาดที่ยอมรับไม่ได้คือรหัสสถานะการตอบสนอง HTTP และจะปรากฏขึ้นหากเซิร์ฟเวอร์ไม่สามารถส่งคืนข้อมูลได้อย่างถูกต้อง เนื่องจากนี่เป็นปัญหาฝั่งเซิร์ฟเวอร์ คำขอของไคลเอ็นต์จึงล้มเหลวและโค้ดจะไม่ได้รับการดำเนินการอย่างถูกต้อง
นี่อาจเป็นปัญหาสำคัญ โดยเฉพาะอย่างยิ่งหากคุณกำลังพัฒนาบริการที่ประมวลผลคำขอต่างๆ ในแต่ละวัน โชคดีที่มีวิธีแก้ไขปัญหานี้ และวันนี้เราจะแสดงวิธีดำเนินการดังกล่าวให้คุณทราบ
การโทรล้มเหลวด้วยรหัสสถานะ 406 ข้อผิดพลาดที่ยอมรับไม่ได้คืออะไร
นี่เป็นข้อความแสดงข้อผิดพลาดของเซิร์ฟเวอร์ที่ปรากฏขึ้นหากไม่สามารถดำเนินการตามคำขอที่เข้ามาได้ รหัสข้อผิดพลาด 406 จะปรากฏขึ้นหากข้อมูลที่ส่งคืนจากเซิร์ฟเวอร์ไม่อยู่ในรูปแบบที่เหมาะสมซึ่งเข้ากันได้กับไคลเอนต์ที่ส่งคำขอ
เราทดสอบ ทบทวน และให้คะแนนอย่างไร
เราทำงานมาตลอด 6 เดือนที่ผ่านมาเพื่อสร้างระบบตรวจสอบใหม่เกี่ยวกับวิธีที่เราผลิตเนื้อหา เมื่อใช้สิ่งนี้ เราได้ปรับปรุงบทความส่วนใหญ่ของเราใหม่ในภายหลังเพื่อมอบความเชี่ยวชาญเชิงปฏิบัติจริงเกี่ยวกับคำแนะนำที่เราทำ
สำหรับรายละเอียดเพิ่มเติมคุณสามารถอ่านได้ วิธีที่เราทดสอบ ทบทวน และให้คะแนนที่ WindowsReport.
นี่เป็นมาตรการรักษาความปลอดภัย และหากเซิร์ฟเวอร์ไม่ส่งคืนข้อมูลในรูปแบบที่คาดหวัง โค้ดจะไม่ถูกดำเนินการ
- ฉันจะแก้ไขข้อผิดพลาด 406 ได้อย่างไร
- 1. ปรับพารามิเตอร์ยอมรับในโค้ดของคุณ
- 2. ใช้ JSON.stringify
- 3. ตรวจสอบให้แน่ใจว่าคุณระบุ user-agent ในส่วนหัว
- HTTP 404 และ 406 แตกต่างกันอย่างไร
ฉันจะแก้ไขข้อผิดพลาด 406 ได้อย่างไร
1. ปรับพารามิเตอร์ยอมรับในโค้ดของคุณ
- เปิดรหัสของคุณ
- ค้นหาบรรทัดที่ส่งคำขอและเปลี่ยนแปลงดังนี้:
profile = personality_insights.profile(profile_text, accept='application/json', content_type='text/plain').get_result()
- บันทึกการเปลี่ยนแปลง.
โปรดทราบว่าพารามิเตอร์ยอมรับสามารถใช้ได้เท่านั้น แอปพลิเคชัน/json หรือ ข้อความ/CSV ค่า.
2. ใช้ JSON.stringify
- เปิดรหัสของคุณ
- ตรวจสอบให้แน่ใจว่าคุณเพิ่มฟังก์ชัน JSON.stringify เช่นนี้
$.ajax({ url: 'http://example.com: 9200/incidents/incidents', type: 'POST', data: JSON.stringify(this.incident), dataType: 'json' })
- บันทึกการเปลี่ยนแปลง.
โปรดทราบว่าโซลูชันนี้จะใช้งานได้ก็ต่อเมื่อออบเจ็กต์ไม่ใช่สตริง JSON ที่ทำให้เป็นอนุกรมอย่างถูกต้อง
3. ตรวจสอบให้แน่ใจว่าคุณระบุ user-agent ในส่วนหัว
- เปิดตัวแก้ไขโค้ดของคุณ
- ถัดไป เพิ่มส่วนหัวของคำขอและรวมไว้ดังนี้:
page_url = 'https://examplepage.com' headers = { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36', } rawpage = requests.get(page_url, headers=headers)
- บันทึกการเปลี่ยนแปลง.
HTTP 404 และ 406 แตกต่างกันอย่างไร
การตอบสนองข้อผิดพลาดไคลเอ็นต์ HTTP 406 จะปรากฏขึ้นเมื่อไคลเอ็นต์ส่งคำขอที่ถูกต้อง แต่ข้อมูลที่ส่งคืนไม่อยู่ในรูปแบบที่ยอมรับ
ในทางกลับกัน, ข้อผิดพลาด HTTP 404 รหัสตอบกลับเป็นหนึ่งในข้อผิดพลาดฝั่งไคลเอ็นต์ที่พบบ่อยที่สุด และอาจเป็นข้อผิดพลาด 4xx ที่ทราบมากที่สุด ปรากฏขึ้นเมื่อไม่สามารถประมวลผลคำขอได้เนื่องจากไม่พบข้อมูลที่ร้องขอ
- ข้อผิดพลาดใบรับรอง doh.xfinity.com: วิธีแก้ไข
- รหัสข้อผิดพลาด Paramount Plus 1100: วิธีแก้ไข
- ข้อผิดพลาด Cloudflare 1001: วิธีแก้ไขปัญหา DNS นี้
406 ข้อผิดพลาดที่ไม่ยอมรับสามารถปรากฏใน Java, Angular และภาษาอื่น ๆ ที่รองรับคำขอ HTTP ปัญหานี้มักส่งผลกระทบต่อนักพัฒนา ไม่ใช่ผู้ใช้อินเทอร์เน็ตทั่วไป
ในการแก้ไข ตรวจสอบให้แน่ใจว่าไคลเอนต์ของคุณได้รับการกำหนดค่าให้ยอมรับข้อมูลประเภทเฉพาะจากเซิร์ฟเวอร์เป็นการตอบกลับ คุณยังสามารถเปลี่ยนการกำหนดค่าเซิร์ฟเวอร์และปรับไฟล์การกำหนดค่าเพื่อให้เซิร์ฟเวอร์และไคลเอนต์ใช้รูปแบบที่รองรับ
นี่เป็นเพียงหนึ่งในข้อผิดพลาดมากมายที่คุณพบได้ และเราได้กล่าวถึงไปแล้วในอดีต ข้อผิดพลาด HTTP 431 และ ข้อผิดพลาด HTTP 413ดังนั้นอย่าพลาดหากคุณต้องการข้อมูลเพิ่มเติม
คุณใช้วิธีการใดในการแก้ไขข้อผิดพลาด 406 ไม่ยอมรับใน Nginx แบ่งปันสิ่งที่คุณค้นพบกับเราในส่วนความเห็น