Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để Store bang trong hoạt động máy chủ trang ứng dụng

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:175167
Khước từ Nội dung trong Cơ sở Kiến thức Không còn được hỗ trợ
Bài viết này nói về các sản phẩm mà Microsoft không còn hỗ trợ nữa. Do đó, bài viết này được cung cấp "nguyên bản" và sẽ không được cập nhật.
TÓM TẮT
Khi bạn phát triển một Web Active Server Pages (ASP) ứng dụng, một cách phổ biến để tuỳ chỉnh nội dung là để lưu trữ thông tin về người sử dụng. Có một số cách để lưu trữ thông tin trong một ASP môi trường. Sửa danh sách bài viết phổ biến nhất cách để lưu trữ nhà nước, bao gồm cả mẫu mã và các ưu và khuyết điểm của mỗi tùy chọn.
THÔNG TIN THÊM

Phiên làm việc và ứng dụng các biến

Làm thế nào họ làm việc?

Các Phiên làm việcỨng dụng các biến được lưu trữ trên máy chủ. Một SessionID, đó là được tạo ra ở đầu một buổi ASP, là tạo ra một trong bộ nhớ cookie được lưu trữ trên máy khách để xác định các Phiên làm việc các biến. Do đó, khách hàng phải có bật trong cookie trình duyệt cho Phiên làm việcỨng dụng biến để làm việc.

Thuận

  • Phương pháp này rất dễ dàng để thực hiện.
  • Bạn có thể lưu trữ các đối tượng và đơn giản biến loại (mặc dù lưu trữ các đối tượng không khuyến khích).
  • Các giá trị được lưu trữ trong phiên làm việc và ứng dụng các biến được ẩn từ người sử dụng.

Nhược điểm

  • Phương pháp này đòi hỏi khách hàng phải có bật trong cookie trình duyệt Web của họ.
  • Phương pháp này không thể tin cậy được chia sẻ giữa khung trong một FRAMESET hoặc qua nhiều trình duyệt trường hợp.
  • Phương pháp này lưu trữ thông tin trên máy chủ Web. Điều này giảm khả năng mở rộng theo hai cách: Phiên làm việcỨng dụng các biến sử dụng nguồn tài nguyên trên máy chủ, và họ không thể được sử dụng trên hoàn toàn tải cân bằng Web trang trại.

Mẫu

Thiết lập giá trị của một biến phiên làm việc:
<%   'Store information in a session variable.   Session("myInformation") = "somevalue"%>				
Lấy giá trị từ phiên biến:
<%    'Retrieve the information stored in the session variable.    myValue = Session("myInformation")%>				

Cookie

Làm thế nào họ làm việc?

Có hai loại cookie: trong bộ nhớ tập tin cookie, và cookie mà sẽ được lưu vào đĩa của khách hàng. Một cookie trong bộ nhớ là một hoặc nhiều cặp giá trị tên được lưu trong bộ nhớ của trình duyệt cho đến khi trình duyệt là đóng cửa. Cookie được lưu trữ để đĩa là một tập tin trên máy tính của khách hàng mà có cặp tên giá trị.

Cookie có thể được thiết lập và Lấy từ cả hai phía khách hàng và phía máy chủ mã.

Thuận

  • Phương pháp này rất dễ dàng để thực hiện.
  • Phương pháp này có thể được lưu vào đĩa để sử dụng trong tương lai (đĩa dựa trên cookie) bởi chỉ đơn giản là thiết lập một ngày hết hạn trên cookie. Điều này cho phép lưu trữ giữa các buổi trình duyệt.

Nhược điểm

  • Khách hàng thủ công có thể sửa đổi tập tin cookie được lưu trữ để đĩa.
  • Phương pháp này đòi hỏi khách hàng phải có bật trong cookie trình duyệt Web của họ.
  • Cookie không thể lưu trữ các đối tượng.

Mẫu

Lưu trữ thông tin trong một cookie:
<%   'Set a cookie value.   Response.Cookies("myInformation") = "somevalue"   'Expire the cookie to save it to disk. If this is omitted, the cookie   'will be an in-memory cookie. In this case, the cookie is set to expire   'in twenty days.   Response.Cookies("myInformation").Expires = now() + 20%>				
Lấy giá trị từ một cookie:
<%    'Retrieve the information that is stored.    myValue = Request.Cookies("myInformation")%>				

Các trường mẫu ẩn

Làm thế nào họ làm việc?

Mỗi trang cần một hình thức với các trường mẫu ẩn chứa các thông tin nhà nước. Thay vì liên kết và chuyển hướng đến các trang, các hình thức là gửi khi người dùng duyệt đến một trang khác nhau.

Thuận

  • Phương pháp này không yêu cầu cookie.

Nhược điểm

  • Nó có thể được rườm rà để chuyển hướng và liên kết đến các trang.
  • Phương pháp này không thể lưu trữ các đối tượng.

Mẫu

Lưu trữ thông tin trong các trường ẩn:
<HTML><HEAD><SCRIPT LANGUAGE=javascript>  //Function that is used to submit the links:  function browseToUrl(url){    form1.action=url;    form1.submit();  }</SCRIPT></HEAD><BODY><%  dim myInformation  myInformation = "somevalue"  %><!-- This stores the value that is set above in the hidden form field. --><FORM id="form1" name="form1" action="" method="post"><INPUT type="hidden" id="myInformation" name="myInformation" value="<%= myInformation%>">  <!-- Navigation sample that uses this technique. --><INPUT type="button" value="p3.asp" id=button1 name=button1 onclick='goToUrl("p3.asp");'></FORM></BODY></HTML>				
Lấy giá trị từ trường mẫu ẩn:
<%    'Retrieving the information that is stored.    myValue = Request.Form("myInformation")%>				

QueryString

Như thế nào?

Khi bạn sử dụng các QueryString bộ sưu tập, các biến được lưu trữ trong URL như một giá trị tên cặp. Ví dụ:
http://servername/page.asp?var1=value1&var2=value2&var3=value3				
LƯU Ý: Cặp tên-giá trị được ngăn cách bởi một dấu "và" (&).

Thuận

  • Nếu máy sử dụng dấu trang, bang sẽ vẫn tồn tại.

Nhược điểm

  • URL đầy đủ chỉ có thể 2083 byte.
  • Phương pháp này không thể lưu trữ các đối tượng.
  • URL là rất dài và khó đọc.

Mẫu

Lưu trữ thông tin trong chuỗi truy vấn:
<HTML><HEAD></HEAD><BODY><%   'Function that assembles the QueryString:   function AddToQueryString(qs, name, value)          if qs="" then       qs = name & "=" & value     else       qs = qs & "&" & name & "=" & value     end if          addToQueryString = qs   end function   dim querystring   'Store the first value.   querystring = AddToQueryString(querystring, "firstvar", "firstvalue")   'Store the second value.   querystring = AddToQueryString(querystring, "secondvar", "secondvalue")%><a href="urlreceive.asp?<%=querystring%>">urlreceive.asp</a></BODY></HTML>				
Truy xuất các giá trị từ chuỗi truy vấn:
<%    'Retrieve the information stored.    myFirstValue = Request.QueryString("firstvar")    mySecondValue = Request.QueryString("secondvar")%>				

Tập tin và cơ sở dữ liệu

Làm thế nào họ làm việc?

Bạn có thể thực hiện kỹ thuật này trong nhiều cách khác nhau. Các bước sau đây minh họa cho một trong những cách để thực hiện các tập tin và cơ sở dữ liệu lưu trữ nhà nước:
  1. Tạo một ID khi người dùng lần đầu tiên đăng nhập hoặc browses đến một Trang trong ứng dụng của bạn.
  2. Sử dụng bất kỳ các kỹ thuật trong bài viết này để lưu trữ các CỦA BẠN.
  3. Để lưu trữ các giá trị trong một tập tin, sử dụng các ID như là tên tập tin. Để lưu trữ các giá trị trong cơ sở dữ liệu, sử dụng một sự kết hợp của các ID và các giá trị tên cặp để xác định các bản ghi.
  4. Tùy chọn lưu trữ một dấu thời gian với các giá trị tên cặp trong cơ sở dữ liệu. Cho các tập tin, bạn có thể sử dụng dấu thời gian từ cuối cùng Sửa đổi.
  5. Viết một dịch vụ để thực hiện dọn dẹp (xóa hồ sơ và các tập tin) theo chu kỳ nhất định (ví dụ, mỗi 20 phút hoặc mỗi đêm, dựa trên bao nhiêu người dùng truy cập vào các trang web). Các dịch vụ có thể sử dụng dấu thời gian để xác định cho dù một bản ghi đã hết hạn.

Thuận

  • Các giá trị được hoàn toàn ẩn từ người sử dụng.
  • Nếu bạn sử dụng một chia sẻ tập tin hoặc cơ sở dữ liệu, điều này có thể được sử dụng để mô phỏng các biến phiên làm việc trên một trang trại Web.
  • Không cần cookie.

Nhược điểm

  • Nó lưu trữ dữ liệu về phía máy chủ.
  • Nó có thể được rườm rà để thực hiện.
  • Phương pháp này có thể được làm chậm vì truy cập cơ sở dữ liệu và tập tin là yêu cầu để lưu trữ và truy xuất các giá trị.
THAM KHẢO
Để biết thêm chi tiết, xem các bài viết sau đây trên các Microsoft Developer Network (MSDN): Cho thông tin bổ sung, bấm vào những con số bài viết dưới đây để xem các bài viết trong cơ sở kiến thức Microsoft:
244465 Làm thế nào để Disable ASP phiên bang Active Server Pages
178037 PRB: Phiên biến mất khi ASP tọa lạc ở Frameset
Cho bài viết cơ sở kiến thức mới nhất và khác hỗ trợ thông tin về thị giác InterDev và Active Server Pages, xem các Trang sau đây trên trang web hỗ trợ kỹ thuật của Microsoft:

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 175167 - Xem lại Lần cuối: 08/19/2011 07:02:00 - Bản sửa đổi: 2.0

Microsoft Active Server Pages 4.0

  • kbaspobj kbcodesnippet kbhowto kbscript kbmt KB175167 KbMtvi
Phản hồi