Chapter 14: Exercises
選擇題
簡答題
- 請簡單說明下列伺服器變數的意義:
- Request.ServerVariables("REMOTE_ADDR")
- Request.ServerVariables("LOCAL_ADDR")
- Request.ServerVariables("HTTP_VIA")
- Request.ServerVariables("HTTP_X_FORWARDED_FOR")
- 請簡單說明下列伺服器變數的意義:
- Request.ServerVariables("SERVER_NAME")
- Request.ServerVariables("SERVER_PORT")
- Request.ServerVariables("SERVER_PROTOCOL")
- Request.ServerVariables("SERVER_SOFTWARE")
- Request.ServerVariables("SERVER_PORT_SECURE")
- 請簡單說明下列伺服器變數的意義:
- Request.ServerVariables("APPL_PHYSICAL_PATH")
- Request.ServerVariables("PATH_TRANSLATED")
- Request.ServerVariables("PATH_INFO")
- Request.ServerVariables("SCRIPT_NAME")
- Request.ServerVariables("URL")
- 請簡單說明下列伺服器變數的意義:
- Request.ServerVariables("HTTP_USER_AGENT")
- Request.ServerVariables("LOGON_USER")
- Request.ServerVariables("HTTP_REFERER")
- 請列舉兩個應用,都使用 Request.ServerVariables("HTTP_REFERER")。
- 要將用戶端的表單資料送到伺服器,
- http protocal 支援哪兩種不同的方法?
- 各有什麼特性?
- 在伺服器端要分別用什麼變數接收?
- 伺服器如何決定 Request("欄位名稱") 的變數值?
- 請說明如何並行使用 get 及 post 這兩種方法,來傳送表單資料到伺服器?
- 如果你的欄位名稱在表單中有所重複,那麼在伺服器端要用什麼方法讀出相關資料?
程式題
請使用本章所學到的 JavaScript/JScript 程式技巧(用於伺服器端)來完成下列作業:
- (*)
依排序方式列出Request.ServerVariables:
請寫一個網頁 orderedRequestServerVariables.asp,可以使用排序的方式(依「變數值」來排序)列出 Request.ServerVariables 的所有變數名稱和變數值。(原先預設的方式,是以「變數名稱」來排序。)
- (*)
根據使用者IP而回傳不同網頁內容:
請寫一個網頁 ipRestriction.asp,可以根據使用者的 IP 來限制瀏覽內容:
- 如果使用者的 IP 不是 140.114 開頭,就回傳「抱歉,此網頁內容只開放給清大同學!」。
- 如果使用者的 IP 是 140.114 開頭,就回傳「歡迎來到此清大同學專屬的網頁!」。
(提示:可使用 Request.ServerVariables("REMOTE_ADDR")。)
- (**)
根據來源網頁而有不同行為:
請寫兩個網頁 main.asp 和 slave.asp,其中 main.asp 包含可連到 slave.asp 的連結,可以滿足下列要求:
- 如果使用者經由 main.asp 來連結到 slave.asp,則顯示 slave.asp 的內容。
- 如果使用者不經由 main.asp 來連結到 slave.asp(譬如直接在瀏覽器打入 slave.asp 的網址,或是經由其它網頁連結至 slave.asp),則在顯示「抱歉,此網頁不允許直接連結或他頁連結!」五秒之後,瀏覽器會直接轉址到 main.asp。
(提示:可使用 Request.ServerVariables("HTTP_REFERER")。)
JScript 程式設計與應用:用於伺服器端的 ASP 環境