ASP Built -in Object Request and Respones
เว็บมีต้นกำเนิดมาจากข้อความแบบคงที่และตอนนี้เว็บไซต์จำนวนมากยังคงใช้วิธีนี้ ข้อเสียของข้อความแบบคงที่คือการรักษาความยากลำบาก (ไฟล์จำนวนมาก) การสอบถามและปัญหาการปรับเปลี่ยน แม้ว่า FrontPage สามารถจัดการได้โดยเว็บไซต์ แต่นี่เป็นเพียงหนึ่งในวิธีการ ตอนนี้เว็บไซต์จำนวนมากจะนำฐานข้อมูลมาใช้ในพื้นหลังเพื่อสร้างข้อความซูเปอร์แบบไดนามิก ด้วยวิธีนี้คุณต้องเปลี่ยนสไตล์เพียงแค่แก้ไขไฟล์สองสามไฟล์ ของวิธีนี้โดดเด่นกว่า ("ไดนามิก" มักจะรวมถึงการแสดงแบบไดนามิกของรูปภาพเช่นไดนามิก GIF, แอปเพล็ต Java ฯลฯ , ไดนามิกของข้อมูลที่อ้างถึงในบทความนี้)
GM CGI (อินเทอร์เฟซเกตเวย์ทั่วไป) และอินเตอร์เฟสแอปพลิเคชันของแอปพลิเคชันเซิร์ฟเวอร์อินเทอร์เน็ต (อินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชันเซิร์ฟเวอร์อินเทอร์เน็ต) และเทคโนโลยีอื่น ๆ ที่เกี่ยวข้องปรากฏขึ้นทำให้เราสามารถสื่อสารกับเว็บเซิร์ฟเวอร์ได้อย่างง่ายดาย ปรากฏตัวและกลายเป็นลมแรง
แต่โปรแกรม CGI เหล่านี้มีข้อเสียอย่างมากนั่นคือ CGI (ซึ่งสามารถเขียนและดำเนินการแยกกันโดย HTML (สามารถเขียนด้วย VB, Java, Perl, C หรือ DePhi ฯลฯ ) และ HTML และการเขียนค่อนข้างยาก ดังนั้นผู้ผลิตบางรายจึงเปิดตัวภาษาสคริปต์ของตนเองเพื่อปรับปรุงการทำงานของการพัฒนาเว็บ ในหมู่พวกเขา NetScape เปิดตัว JavaScript สองประเภท (สำหรับไคลเอนต์และเซิร์ฟเวอร์); สำหรับนักพัฒนามืออาชีพจุดสำคัญที่สุดของโปรแกรมไคลเอนต์คือความเป็นสากลในขณะที่เซิร์ฟเวอร์เน้นฟังก์ชั่นและประสิทธิภาพ สำหรับการพัฒนาโปรแกรมลูกค้า JavaScript นั้นดีที่สุดอย่างไม่ต้องสงสัยเพราะเบราว์เซอร์หลักสองแห่งของวันนี้คือ Netscape ทั้งหมดอ้างว่าสนับสนุนมาตรฐาน; แต่สิ่งที่ทำให้เรามีความสุขคือเครื่องหมายจาวาสคริปต์บางรุ่นบางรุ่นของ IE หรือ IE ไม่จำเป็นต้องสนับสนุนซึ่งจะทำให้เราย้ายบางโปรแกรมไปยังเซิร์ฟเวอร์เพื่อดำเนินการเพราะโปรแกรมด้านข้างโปรแกรมจะอธิบายการสร้างการสร้างก่อน สร้างและสร้างข้อความ HTML (หรือ ActiveX) จากนั้นส่งไปยังไคลเอนต์ดังนั้นจึงไม่มีปัญหาความเข้ากันได้
เช่น (คอมไพเลอร์บน JavaScript สำหรับเซิร์ฟเวอร์) เหมือนกับ ASP , ภาษา -ภาษาที่มุ่งเน้นคล้ายกับ C/C ++ ชื่อไฟล์เสริมของไฟล์ LiveWire คือ HTML และชื่อ ASP File Suffix คือ ASP เนื่องจากไฟล์ ASP ถูกอธิบายเมื่อลูกค้าอ่านและไฟล์ LiveWire จะต้องได้รับการคอมไพล์ล่วงหน้า (หลังจากการดัดแปลงแต่ละครั้ง แก้ไขแล้วมันถูกแก้ไขมันถูกแก้ไขแล้วมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขมันถูกแก้ไขแล้ว มันได้รับการแก้ไขมันถูกแก้ไข ASP มีเครื่องมือพัฒนาเสริมที่สอดคล้องกัน (InterDev) ซึ่งสามารถสร้างขึ้นเพื่อสร้างการควบคุมบางอย่าง แน่นอนว่าสิ่งเหล่านี้ไม่สำคัญ แต่โดยทั่วไปเนื่องจาก IIS เชื่อมโยงกับ NT ผู้ใช้ที่มี IIS จะมากกว่า
เนื่องจาก NetScape ได้เปิดตัว LiveWire และ Microsoft เพื่อเปิดหน้าเซิร์ฟเวอร์ที่ใช้งานอยู่จึงง่ายกว่ามากในการเขียนโปรแกรมออนไลน์สำหรับโปรแกรมเมอร์ แต่ภาษาสคริปต์ในชั้นเรียนนี้มีข้อเสียทั่วไปนั่นคือเพราะมีการอธิบายมันจะไม่เร็วเกินไป เมื่อเร็ว ๆ นี้ Microsoft แนะนำให้ใช้แบบจำลองสามชั้น
1. วัตถุพื้นฐานของ ASP
ASP (หน้าเซิร์ฟเวอร์ที่ใช้งานอยู่) เป็นภาษาที่เน้นวัตถุคล้ายกับ VB ที่นี่ฉันไม่ต้องการให้รายละเอียดแนวคิดพื้นฐานบางอย่างเช่นวัตถุ แต่แนะนำลักษณะภาษาของพวกเขาโดยตรงเพื่อให้นักพัฒนาสามารถปรับเปลี่ยนและเตรียมโปรแกรม ASP ได้อย่างเชี่ยวชาญ (เพราะหลายคนใช้เครื่องมือพัฒนาเช่น InterDev เพื่อสร้างโปรแกรม ASP)) โปรแกรม ASP)) )) สาระสำคัญ
ก่อนอื่นชื่อที่เก็บถาวรของโปรแกรม ASP จะต้องเป็น "ASP" หากคุณต้องการเรียกไฟล์ ASP อื่นในไฟล์ ASP หนึ่งไฟล์คุณสามารถเพิ่มคำสั่งต่อไปนี้ใน ASP: <! ในหมู่พวกเขาเสมือนแสดงถึงพา ธ ไฟล์เสมือนจริงและไฟล์แสดงถึงเส้นทางไฟล์จริง
ASP มีวัตถุที่สร้างขึ้นหลักห้าชิ้น: คำขอการตอบสนองเซิร์ฟเวอร์เซสชันแอปพลิเคชันและจะอธิบายแยกต่างหากด้านล่าง
1. คำขอ
ASP ยังคงเป็นไปตามที่ได้รับความนิยมและใช้แบบฟอร์มลูกค้าสำหรับการแลกเปลี่ยนข้อมูล วัตถุคำขอที่สร้างขึ้นของ ASP มีห้าวิธีในการรับข้อมูลไคลเอนต์ (QueryString/Form/Cookies/ServerVariables/ClientCertificate)
ไวยากรณ์: คำขอเมธอด (พารามิเตอร์) |
หากใช้งานหลังระบบจะเลือกวิธีการที่สอดคล้องกันโดยอัตโนมัติ
รูปร่าง
ที่นี่เราเน้นคุณลักษณะบางอย่างของรูปแบบ:
enableype = รูปแบบการส่งข้อมูล MIME
วิธี = การส่งวิธีการข้อมูลรับ/โพสต์
onRest = กดโปรแกรมที่คีย์ REST CALLE
onsubmit = กดโปรแกรมการโทรคีย์ sumit
target = หน้าต่างเฟรมของเนื้อหาเอาต์พุต>
โดยทั่วไปมีสามวิธีในการส่งข้อมูลโดยใช้แบบฟอร์ม: ไปยัง ASP อื่น ๆ จากแบบฟอร์มบนหน้าเว็บ HTML;
ไวยากรณ์: request.form (พารามิเตอร์) [(ดัชนี)]
พารามิเตอร์แสดงชื่อขององค์ประกอบในรูปแบบและดัชนีแสดงถึงหมายเลขลำดับขององค์ประกอบชื่อเดียวกัน
ตัวอย่าง:
องค์ประกอบของชื่อของชื่อของชื่อสามารถอ่านได้โดยที่การนับเป็นแอตทริบิวต์ระบบของแบบฟอร์มเพื่อคำนวณจำนวนองค์ประกอบชื่อเดียวกัน หากคุณไม่ได้ระบุจำนวนขององค์ประกอบชื่อเดียวกันระบบจะอ่านค่าขององค์ประกอบทั้งหมดของชื่อและการใช้งานเดียวกัน "," เป็นช่วงเวลา
ตัวอย่าง: request.form (ผู้ใช้) = abc, bcd, cde
2. Querystring
ไวยากรณ์: request.querystring (พารามิเตอร์) [(ดัชนี)]]
นอกเหนือจากการส่งข้อมูลด้วยแบบฟอร์มคุณสามารถส่งข้อมูลได้โดยการเชื่อมต่อ "?"
resquest.QueryString (ผู้ใช้) = ABC เป็นครั้งที่สอง
resquest.QueryString (ผู้ใช้) = BCD ครั้งที่สาม
Resquest.QueryString (ผู้ใช้) = CDE
3. ServerVariables
ไวยากรณ์: ServerVariables (ชื่อพารามิเตอร์)
เรารู้ว่าโปรโตคอลการส่งผ่านของเว็บ/การเรียกดูคือ HTTP และส่วนหัวของ HTTP จะมีข้อมูลลูกค้าบางอย่างเช่น
ที่อยู่ IP ของลูกค้าระบบภาษาเบราว์เซอร์ ฯลฯ ในเวลานี้คุณสามารถรับข้อมูลที่เกี่ยวข้องผ่าน request.ServerVariables (***) เช่น request.ServerVariables (ACCEPT_LANGUAGE) เพื่อรับระบบภาษาของเบราว์เซอร์ลูกค้า ดูพารามิเตอร์ระบบอื่น ๆ ด้านล่าง:
Server_name ชื่อเครื่องเซิร์ฟเวอร์หรือที่อยู่ IP
เซิร์ฟเวอร์ Server_port กำลังทำงานอยู่
request_method เพื่อปล่อยวิธีการร้องขอ (รับ/โพสต์/หัว
โปรแกรม script_name เรียกโดย: cgi-bin/a.pl
ชื่อของ Remote_host (ไคลเอนต์) ชื่อเครื่องระยะไกล (ไคลเอนต์) ที่ร้องขอตามคำขอ
Remote_addr ปล่อยที่อยู่ IP ของเครื่องระยะไกล (ไคลเอนต์) ที่ร้องขอตามคำขอ
Remote_Ident ปล่อยชื่อผู้ใช้ของคำขอ (เช่น Dial -Up Online จากนั้น ID ผู้ใช้)
ประเภท MIME ของข้อมูล content_type เช่น "text/html"
รายการประเภท MIME ที่ยอมรับได้ของไคลเอนต์ HTTP_ACCEPT
ไคลเอนต์ http_user_agent ปล่อยประเภทเบราว์เซอร์คำขอ
http_referr ก่อนอ่านโปรแกรม CGI ไคลเอนต์อ้างถึง URL ข้อความ
4. คุกกี้
บนลูกค้าคุกกี้บันทึกข้อมูลจำนวนมากจากเบราว์เซอร์ลูกค้า วิธีการตั้งค่าคุกกี้หลายตัวคือการตอบสนอง cookies (ชื่อ) = ค่า
5. แคช
เราสามารถตั้งค่าข้อมูลเกี่ยวกับหน้าเว็บที่ฉันได้เยี่ยมชมจากแคชบนเบราว์เซอร์ Response.Clear เป็นหน่วยความจำของลูกค้า Response.buffer = การตั้งค่าที่แท้จริงสามารถอ่านข้อมูลจากแคช (ค่าเริ่มต้นเป็นเท็จ)
6. ClientCertification
ClientCertification ใช้เพื่อรับข้อมูลการยืนยันตัวตนของเบราว์เซอร์ไคลเอนต์ (สอดคล้องกับมาตรฐาน X.509) แต่เบราว์เซอร์ไคลเอนต์จะต้องรองรับโปรโตคอล SSL3.0 หรือ PCT1 ต้องใช้สองขั้นตอน
2. การตอบสนอง
เมื่อส่งข้อมูลจากเซิร์ฟเวอร์ไปยังไคลเอนต์คุณสามารถผ่านวิธีการต่อไปนี้:
1) Response.Write ข้อมูลเอาต์พุตโดยตรงเช่น Response.write
2) Response.redirect Guide ลูกค้าไปยังตำแหน่ง URL อื่นเช่น Response.redirect http://zyr.yeah.net แต่มีปัญหาที่นี่เพื่อให้ความสนใจ จากเครื่องหมายซึ่งหมายความว่าจะดำเนินการก่อนที่เซิร์ฟเวอร์จะไม่ส่งหนังสือพิมพ์ HTML Text ที่เซิร์ฟเวอร์มิฉะนั้นข้อความแสดงข้อผิดพลาดการส่งจะเกิดขึ้น
3) Response.ContentType ควบคุมประเภทไฟล์ของเอาต์พุต ถูกส่ง
4) Response.cookies ใช้เพื่อตั้งค่าของคุกกี้ (การใช้งานของคีย์ได้รับการอธิบายก่อนหน้านี้ที่นี่ไม่ได้อธิบายไว้ที่นี่) ระบบคุกกี้มีห้าแอตทริบิวต์โดยค่าเริ่มต้นรวมถึงการหมดอายุโดเมน (ชื่อโดเมน) เส้นทาง (เส้นทาง) ความปลอดภัย (ความปลอดภัย) haskeys (ตัดสินว่าภายใต้คุกกี้ได้รับการซ่อมแซมที่นั่น เป็นข้อความคุกกี้อื่น ๆ )
5) Response.Buffer ใช้เพื่อตรวจสอบว่าข้อมูลถูกส่งไปยังบัฟเฟอร์หรือไม่ เพราะบางครั้งเราต้องการส่งข้อมูลระดับกลางไปยังบัฟเฟอร์และทำงานต่อไป เมื่องานการประมวลผลทั้งหมดเสร็จสิ้นข้อมูลจะถูกส่งออกไปยังลูกค้า อย่างไรก็ตามเมื่อมีการเรียกวิธีการล้างหรือสิ้นสุดในระหว่างกระบวนการประมวลผลเนื้อหาบัฟเฟอร์จะถูกส่งออก
คุณลักษณะอื่น ๆ ของการตอบสนอง:
หมดอายุ: ตั้งค่าความยาวเวลาของหน้าเว็บที่เบราว์เซอร์ไคลเอนต์
ExpiresAbsolute: ตั้งค่าวันที่และเวลาของหน้าเว็บที่เก็บไว้ที่เบราว์เซอร์ไคลเอนต์
วิธีการตอบสนองอื่น ๆ :
Addheader: ตั้งส่วนหัว HTTP ของไฟล์ HTML
Appendtolog: เพิ่มสตริงที่ส่วนท้ายของไฟล์ที่บันทึกไว้ในเว็บเซิร์ฟเวอร์
ล้าง: ล้างข้อมูลเอาต์พุต HTML ในบัฟเฟอร์
สิ้นสุด: หยุดการประมวลผลไฟล์ ASP และกลับสู่สถานะในเวลานั้น
Flush: ส่งข้อมูล HTML ของบัฟเฟอร์ทันที