tim hieu

17 6 0
tim hieu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Neáu thuoäc tính naøy laø true thì web server chæ traû keát quaû cho client khi taát caû caùc script ñöôïc xöû lyù hoaëc phöông thöùc Flush hay End ñöôïc goïi. Giaù trò maëc ñònh laø F[r]

(1)

I Tìm hiểu công nghệ ASP(Active server Page): 1 Khái niệm:

ASP ngôn ngữ kịch dùng để xây dựng ứng dụng môi trường internet Như tên gọi nó, ASP giúp người xây dựng ứng dụng web tạo trang web có nội dung linh hoạt Với người dùng khác truy cập vào trang web nhận kết khác Nhờ đối tượng có sẵn(Built_in Object) khả hổ trợ ngôn ngữ script VBScript Jscript, ASP giúp người xây dựng ứng dụng dễ dàng nhanh chóng tạo trang web chất lượng Những tính giúp người phát triển ứng dụng nhanh chóng tiếp cận ngơn ngữ mới, điều ưu điểm không nhỏ ASP 2 Cấu trúc trang ASP:

Trang ASP đơn giản trang văn với phần mở rộng là.asp, gồm có phần :

 Văn (Text)

 HTML tag (HTML : Hypertext Markup Language)  Các đoạn script asp

(2)

Xem ví dụ đây: <html>

<body>

Bạn bắt đầu với trang ASP ngày :<%=Now%> </body>

</html>

3 Mơ hình ứng dụng web qua công nghệ ASP

Thao tác client server ứng dụng web thể khái quát sau:

4 Hoạt động trang ASP:

Khi trang ASP yêu cầu web browser, web server duyệt trang ASP dịch script ASP Tùy theo người xây dựng trang web quy định mà kết web server dịch trả cho trình duyệt người dùng trả dịch xong tất script Kết trả mặc định trang theo cấu trúc ngôn ngữ HTML

DBMS SQL Server O

DB C

Mơ hình ứng dụng Web thể qua công nghệ ASP Web Server

HTTP OL

ED B A

D O ASP

DB Server Client

(3)

5 Ưu điểm khuyết điểm ASP: Ưu điểm :

 ASP bổ sung cho công nghệ có từ trước CGI (Common Gateway Interface), Giúp người dùng xây dụng ứng dụng web với tính sinh động Tuy nhiên, khác với CGI, trang ASP không cần phải hợp dịch  Dễ dàng tương thích với cơng nghệ MicroSoft ASP sử dụng ActiveX

Data Object (ADO) để thao tác với sở liệu tiện lợi

 Với ASP cung cấp, nhà phát triển ứng dụng web dễ dàng tiếp cận công nghệ nhanh chóng tạo sản phẩm có giá trị Điều có ý nghĩa điều kiện phát triển vũ bảo tin học ngày Nó góp phần tạo nên đội ngũ lập trình web lớn mạnh

 ASP có tính mở Nó cho phép nhà lập trình xây dựng component đăng ký sử dụng dễ dàng Hay nói cách khác ASP có tính

COM(Component Object Model) Khuyết điểm :

 ASP chạy vàtương thích môi trường Window điều làm ASP bị hạn chế nhiều

 Dùng ASP gặp khơng khó khăn việc can thiệp sâu vào hệ thống ứng dụng CGI

 ASP không hổ trợ nhiều từ hãng thứ ba

 Các ứng dụng ASP chạy chậm công nghệ Java Servlet

(4)

II Các đối tượng Built-in ASP 1 Application Object

Đối tượng Application dùng chia sẻ thông tin cho người dùng Bởi thơng tin đối tượng application dùng chung cho người dùng nên cần phương thức để bảo đảm tính thống liệu

Cú pháp :

Application.Method

Những vấn đề cần quan tâm sử dụng đối tượng application:

 Contents: Chứa tất item mà thiết lập đối tượng application mà khơng dùng tag <OBJECT>

Cú Pháp :

Application.Contents( Key )

Key : tên property cần nhận Ví dụ: Bạn dùng vịng lặp để nhận tất item application

<% Dim AppItem

For Each AppItem in Application.Contents Response.write(ApplicationItem & " : " &

Application.Contents(AppItem) & "<BR>")

Next %>

Lock: phương thức lock ngăn chặn client khác thay đổi giá trị biến dùng chung đối tượng applicaton Nếu phương thức UnLock không gọi server tự động thực lệnh xử lý xong script time out

(5)

UnLock: phương thức UnLock cho phép client thay đổi giá trị biến lưu đối tượng application bị lock trước

Cuù phaùp: Application.UnLock <%

Application.Lock

Application("NumVisits") = Application("NumVisits") + 1 Application.Unlock

%>

Application_OnStart: kiện xảy trước session đầu tiên tạo, nghĩa xảy trước kiện Sesion_OnStart Trong kiện tồn đối tượng application session

Application_OnEnd: kiện Application_OnEnd xuất ứng dụng Nó xảy sau kiện Session_OnEnd Trong kiện tồn đối tượng application session

(6)

Cú pháp :

<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server> Sub Session_OnEnd

End Sub

Sub Session_OnStart .

End Sub </SCRIPT> 2 Session

Session đối tượng web server tự động tạo trang web ứng dụng người dùng gọi Session tiện lợi cho người phát triển ứng dụng web việc lưu lại thông tin người dùng Đối tượng session tồn session bị hủy hết hiệu lực(time out) Khi muốn lưu item đối tượng session phải yêu cầu người dùng cho phép lưu cookies(enable

cookies) trình duyệt web Cú phaùp :

Session.collection | property | method

Những vấn đề cần quan tâm sử dụng đối tượng session:

 Contents: Chứa tất item mà thiết lập cho đối tượng session mà khơng dùng tag <OBJECT>

Cú Pháp :

Session.Contents( Key )

Key : tên property cần nhận

Ví dụ: Bạn dùng vịng lặp để nhận tất item Session

(7)

For Each sessionItem in Session.Contents

Response.write(sessionItem & " : " &

Session.Contents(sessionItem) & "<BR>")

Next %>

SessionID: Là số kiểu long phát sinh web server session tạo Mỗi người dùng có sessionID khơng giống Khi web server bị stop start trở lại sessionID web server phát sinh lần sau trùng với lần trước Do khơng thể dùng ID để tạo khóa cho ứng dụng sở liệu

Cú pháp: Session.SessionID

Timeout: Thời gian mà đối tượng Session tồn Giá trị tính phút Nếu người dùng khơng refresh yêu cầu trang web ứng dụng khoảng thời gian lớn thời gian timeout session kết thúc Giá trị mặc định 20 phút

Cú pháp: Session.Timeout [ = nMinutes]

Abandon: Dùng để hủy đối tượng Session giải phóng tài nguyên Web server tự thực phương thức session hết hiệu lực(time out) Khi abandon gọi, đối tượng chứa session hành hàng đợi chờ xóa Server xử lý tất script sau xóa dối tượng hàng đợi

Cú pháp:

(8)

<% Se sesion.Abandon

Session("MyName") = "Mary" Reponse.Write(Session("MyName")) %>

Ở trang biến Myname tồn bị hủy lệnh script thực xong

Session_OnStart: kiện xảy server tạo Session Server sử lý script thực thi yêu cầu trang Sesion_OnStart nơi thuận lợi cho bạn thiết lập biến gọi trước trang thực thi Các đối tượng built_ in tồn kiện là: Application, ObjectContext, Request, Response, Server Session

Session_OnEnd: kiện xảy session bị hủy lệnh Abandom timeout Trong kiện có đối tượng built_in: Application, Server, Session ASP tồn

Cả phương thức Session_OnStart Session_OnEnd phải đặt tập tin Global.asa

Cú pháp :

<SCRIPT LANGUAGE=ScriptLanguage RUNAT=Server> Sub Session_OnEnd

End Sub

Sub Session_OnStart .

End Sub </SCRIPT>

3 ObjectContext Object

(9)

Khi trang ASP chứa thị @TRANSACTION, trang thực transaction chấm dứt xử lý tất giao tác thực xong Cú pháp:

ObjectContext.Method Method:

SetComplete: Nếu tất thành phần có transaction gọi phương thức transaction kết thúc

Phương thức SetComplete bỏ qua lệnh SetAbort gọi trước đo Cú pháp:

ObjectContext.SetComplete

SetAbort: Phương thức khai báo tất thao tác thực transaction khơng hồn thành tàingun khơng cập nhật

Cú pháp:

ObjectContext.SetAbort

OnTransactionCommit: kiện xảy sau tất script giao tác kết thúc web server(IIS) sẻ xử lý hàm OnTransactionCommit tồn

OnTransactionAbort: Tương tự kiện OnTransactionCommit 3 Request Object

Đối tượng Request nhận tất giá trị mà trình duyệt của client gởi đến server thơng qua yêu cầu HTTP (HTTP request)

(10)

Request[.collection|property|method](variable)

Những vấn đề cần quan tâm sử dụng đối tượng Request:

ClientCertificate: collection lưu trong trường client certificate gởi kèm HTTP request Nếu web browser dùng nghi thức SSL3.0 để kết nối với server server yêu cầu certificate browser gởi trường này, ngược lại ClientCertificate trả giá trị EMPTY Nếu muốn dùng collection phải cấu hình web server yêu cầu client certificate

Cú pháp:

Request.ClientCertificate( Key[SubField] )

Cookies: collection lưu máy client tập tin nhỏ Cookies trình duyệt client gởi kèm HTTP request Cú pháp:

Request.Cookies(cookie)[(key)|.attribute] Giải thích đối số:

- cookie: Chỉ định cookie để nhận giá trị

- key: Tham số tùy chọn dùng để nhận item có cookie - attribute: Chỉ định thông tin thân cookie Tham số thuocä

tính Name hay HasKeys

(11)

second, gọi request.Cookies nhận kết First=firstkeyvalue&Second=secondkeyvalue

Nếu hai cookie trùng tên trình duyệt client gởi cho server câu lệnh Request.Cookies trả vè cookie có cấu trúc sâu Ví dụ, hai cookie trùng tên có đường dẫn /www/ /www/home/, client gởi hai cookie cho server lệnh Request.Cookies trả cookie thứ

Để biết cookie có item không ta dùng lệnh script là:

<% Request.Cookies("myCookie").HasKeys %> kết trả một số boolean.

Ví dụ sau ghi tất item có cookie có tên MyCookie. <%

If Request.Cookies(“MyCookie”).Haskeys Then For Each key In Request.Cookies

Response.Write item &”=”

Response.Write Request.Cookies(“MyCookie”)(key) & “<br>” Next

End If %>

Form: collection nhận giá trị thành phần form được gởi phương thức POST thơng qua HTTP request

Cú pháp:

Request.Form(element)[(index)|.Count]

- Element: Tên thành phần form

- index: Tham số tùy chọn cho phép truy cập

(12)

Form collection mục theo tên parameter request Chúng ta biết có parameter form collection cách gọi Request.Form().Count

Ví dụ: trang HTML sau: <HTML>

<HEAD> </HEAD> <BODY>

<FORM ACTION = "submit.asp" METHOD = "post">

Your first name: <INPUT NAME = "firstname" SIZE = 48><br> What is your favorite ice cream flavor:

<SELECT NAME = "flavor">

<OPTION>Vanilla </OPTION> <OPTION>Strawberry </OPTION> <OPTION>Chocolate </OPTION> <OPTION>Rocky Road</OPTION> </SELECT><br>

<INPUT TYPE = SUBMIT> </FORM>

</BODY> </HTML>

Trang submit.asp có nội dung sau: <HTML>

<HEAD> </HEAD> <BODY>

Welcome: <%=Request.Form(“firstname”)%>

(13)

</BODY> </HTML>

QueryString: Collection nhận tất giá trị chuỗi query. HTTP query string định giá trị theo sau dấu “?” câu lệnh request Chúng ta sử dụng collection querrystring tương tự collection form

Cuù pháp:

Request.QueryString(Tên biến)[(chỉ mục)].Count

ServerVariables: chứa tất thông tin biến môi trường. 4 Response Object:

Khác với đối tượng Request, Response gởi tất thông tin xử vừa xử lý cho client yêu cầu Chúng ta xử dụng đối tượng để giao tiếp với người dùng

Cú pháp:

Response.collection|property|method Những vấn đề cần quan tâm sử dụng đối tượng Request:

Cookies: collection dùng để thiết lập giá trị cho biến cookies Nếu cookies khơng tồn web server tạo cookies máy client Ngược lại, giá trị cookies giá trị thiết lập Một lưu ý sử dụng cookies giá trị cookies phải thông tin gởi cho trình duyệt client

Cú pháp:

Response.Cookies(cookie)[(key)|.attribute] = value

(14)

- Key: tham số tùy chọn Nếu giá trị thiết lấp cookies

này xem cookies từ điển

- Attribute: Bao gồm thơng tin liên quan đến cookies: - Domain: thuộc tính ghi, cho biết domain tạo cookies - Expires: thuộc tính ghi, qui định ngày cookies hết hạn Nếu

không qui định thuộc tính cookies hết hạn session kết thúc

- Haskeys: thuộc tính đọc, cho biết cookies có chứa item hay

không

- Path: thuộc tính ghi, giá trị định client

gởi cookies cho server có đường dẫn

- Secure: thuộc tính ghi, qui định giá trị muốn cookies

được bảo mật

Buffer: biến kiểu boolean Nếu thuộc tính true web server trả kết cho client tất script xử lý phương thức Flush hay End gọi Giá trị mặc định False

Cú pháp: Response.Buffer = [True, false]

CacheControl: qui định proxy server có lưu kết trang ASP phát sinh hay không Giá trị mặc định không(private)

 ContentType: qui định dạng liệu web server trả cho client Giá trị mặc định text/HTML

Cú pháp: Response.ContentType [= ContentType ] Ví dụ:

<% Response.ContentType = "image/GIF" %>

(15)

Cú pháp: Response.Expires =[minuter]

IssClientConnected: kiểm tra client kết nối với server. Cú pháp: Response.IsClientConnected

BinaryWrite: phương thức tiện lợi cho việc truyền thông tin kiểu nhị phân cho client

Cú pháp: Response.write data

Data: liệu muốn truyền cho client

Clear: xóa tất liệu chứa vùng đệm Muốn dùng phương thức này phải định giá trị Response.Buffer = TRUE

Cú pháp: Response.clear

End: Khi gọi phương thức này, server dừng xử lý script trả cho client kết thực Muốn dùng phương thức phải định giá trị Response.Buffer = TRUE

Cú pháp: Response.End

Flush: gởi tất liệu vùng đệm cho client Muốn dùng phương thức phải định giá trị Response.Buffer = TRUE

Cú pháp: Response.Flush

Redirect: chuyển hướng trình duyệt client đến địa URL khác Cú pháp: Response.Redirect URL

(16)

Đối tượng Server cung cấp phương thức thuộc tính dùng cho truy cập server

Cú phaùp: Server.property|method

Những vấn đề cần quan tâm sử dụng đối tượng server:

ScriptTimeout: thuộc tính trị qui định thời gian lớn mà lệnh script thực Giá trị mặc định 90 giây Giá trị timeout sè không hiệu lực server thực script

Cú pháp: Server.ScriptTimeout NumSeconds

NumSeconds: Thời gian tối đa mà script hết hiệu lực

CreateObject: Phương thức CreateObject tạo instance server component Những đối tượng tạo phương thức server giải phóng server thực xong script Phương thức không dùng để tạo đối tượng built_in ASP

Cú pháp: Server.CreateObject(progID) progID : kiểu đối tượng muốn tạo.

HTMLEncode: Phương thức dùng để mã hóa chuỗi.

Cú pháp: Server.HTMLEncode (string) Ví dụ:

<%= Server.HTMLEncode("The paragraph tag: <P>") %>

Chuỗi sau thực đoạn script trên:

The paragraph tag: &lt;P&gt;

MapPath: phương thức cho biết thông tin đường dẫn vật lý thư

(17)

Ngày đăng: 30/05/2021, 12:42

Tài liệu cùng người dùng

Tài liệu liên quan