ฤดูใบไม้ผลิ exposes ปัจจุบันHttpServletRequest
วัตถุ (เช่นเดียวกับปัจจุบันHttpSession
วัตถุ) ผ่านการห่อหุ้มServletRequestAttributes
วัตถุประเภท วัตถุเสื้อคลุมนี้ถูกผูกไว้กับ ThreadLocal และจะได้รับโดยการเรียกวิธีstatic
RequestContextHolder.currentRequestAttributes()
ServletRequestAttributes
ให้วิธีgetRequest()
การรับคำขอปัจจุบันgetSession()
เพื่อรับเซสชันปัจจุบันและวิธีการอื่น ๆ เพื่อรับแอตทริบิวต์ที่เก็บไว้ในทั้งสองขอบเขต รหัสต่อไปนี้แม้ว่าจะดูน่าเกลียดเล็กน้อย แต่ก็ควรให้คุณได้รับวัตถุคำขอปัจจุบันที่ใดก็ได้ในแอปพลิเคชัน:
HttpServletRequest curRequest =
((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
.getRequest();
โปรดทราบว่าRequestContextHolder.currentRequestAttributes()
วิธีนี้จะส่งคืนอินเทอร์เฟซและจำเป็นต้องพิมพ์ลงServletRequestAttributes
ในอินเทอร์เฟซที่ใช้
Spring Javadoc: RequestContextHolder | ServletRequestAttributes