อะไรคือความแตกต่างระหว่างหน้า. aspx และ. asx ตอนนี้ฉันใช้ ashx เมื่อฉันต้องการจัดการคำขอที่เรียกจากรหัสและส่งกลับพร้อมคำตอบ แต่ฉันต้องการคำตอบทางเทคนิคเพิ่มเติมโปรด
อะไรคือความแตกต่างระหว่างหน้า. aspx และ. asx ตอนนี้ฉันใช้ ashx เมื่อฉันต้องการจัดการคำขอที่เรียกจากรหัสและส่งกลับพร้อมคำตอบ แต่ฉันต้องการคำตอบทางเทคนิคเพิ่มเติมโปรด
คำตอบ:
Page เป็นตัวจัดการกรณีพิเศษ
ตัวจัดการเว็บทั่วไป ( *.ashxตัวประมวลผลที่ใช้ส่วนขยาย) เป็นตัวจัดการ HTTP เริ่มต้นสำหรับตัวจัดการเว็บทั้งหมดที่ไม่มี UI และรวมถึง@WebHandlerคำสั่ง
ASP.NET page handler ( *.aspx) เป็นตัวจัดการ HTTP เริ่มต้นสำหรับเพจ ASP.NET ทั้งหมด
ในบรรดาตัวจัดการ HTTP ในตัวยังมี Web service handler ( *.asmx) และ Trace handler ( trace.axd)
MSDN พูดว่า :
ตัวจัดการ ASP.NET HTTP คือกระบวนการ (มักเรียกว่า "ปลายทาง") ที่ทำงานเพื่อตอบสนองการร้องขอที่ส่งไปยังโปรแกรมประยุกต์บนเว็บ ASP.NET ตัวจัดการที่พบบ่อยที่สุดคือตัวจัดการเพจ ASP.NET ที่ประมวลผลไฟล์. aspx เมื่อผู้ใช้ร้องขอไฟล์. aspx คำร้องขอจะถูกประมวลผลโดยเพจผ่านตัวจัดการเพจ
ภาพด้านล่างแสดงสิ่งนี้:

สำหรับคำถามที่สองของคุณ:
Ashx รองรับการเชื่อมต่อมากกว่า aspx หรือไม่?
อย่าคิดอย่างนั้น (แต่อย่างน้อยก็ต้องไม่น้อยกว่า)
HttpHandlerเป็นเพียงส่วนหนึ่งของคำขอที่กำลังดำเนินการก่อนPageส่วน
.aspxใช้แบบครบวงจร ( Init, Load, PreRender) และสามารถตอบสนองต่อการคลิกปุ่ม ฯลฯมีเพียงหนึ่งเดียววิธี.ashxProcessRequest
.aspx เป็นหน้าที่แสดงผล หากคุณต้องการมุมมองให้ใช้หน้า. aspx หากสิ่งที่คุณต้องการคือฟังก์ชันแบ็กเอนด์ แต่จะยังคงอยู่ในมุมมองเดิมให้ใช้หน้า. asx
สำหรับคนที่เคยตั้งโปรแกรมใน nodeJ มาก่อนโดยเฉพาะการใช้ expressJS ฉันคิดว่า.ashxเป็นตัวกลางที่เรียกใช้nextฟังก์ชัน ในขณะที่.aspxจะเป็นตัวควบคุมที่จริงตอบสนองต่อการร้องขอทั้งรอบres.redirect, res.sendหรืออะไรก็ตาม