資源簡介 2.6 網絡應用軟件開發1.關于網絡應用軟件的實現架構,說法正確的是 ( )A.網絡應用軟件的實現架構有三種B.瀏覽器/服務器架構的優點是降低了系統的通信開銷和開發的難度C.C/S服務器端主要提供數據管理、數據共享、系統維護和并發控制等D.C/S是對B/S架構改進后產生的一種軟件系統體系結構2.在編寫Flask網絡應用程序時需完成以下操作,下列操作屬于創建應用實例的是 ( )A.from flask import FlaskB.app=Flask(_ _name_ _)[email protected]('/')D.app.run()3.客戶端無需專門的應用程序,具有這一特點的網絡架構是 ( )A.C/S架構 B.C/C架構C.B/S架構 D.B/C架構4.如圖所示是某信息系統的網絡架構圖:關于該網絡模式特點的描述,不正確的是 ( )A.該模式屬于B/S模式,無需安裝專門的客戶端應用程序B.應用程序基本上都集中于服務器端C.升級和維護都較方便,極大地降低了成本和工作量D.服務器的負荷較輕,對服務器的要求較低5.小明為水培蔬菜實驗室搭建了環境溫濕度監測系統,Web服務器端程序采用Flask Web框架開發,服務器IP為100.168.30.11,端口號為8080,采用GET形式提交數據,各子頁面功能如下表所示:序號 子頁面路徑 功能說明1 / 實時顯示溫度數據2 /set 提交溫濕度數據并返回提示信息3 /data 統計顯示歷史數據(1)若某一時刻傳感器監測到環境溫度值為24.5,濕度值為36,則提交數據至Web服務器的URL為 (單選,填字母)。 A.http:∥100.168.30.11:8080/data temp=24.5&hum=36B.http:∥100.168.30.11:8080/set temp=24.5&hum=36C.http:∥100.168.30.11:8080/set 24.5&36D.http:∥100.168.30.11:8080/ temp=24.5&hum=36(2)已知系統設有m個監測點,服務器能正常接收數據,現抽取某一時刻的一組監測值進行異常監測。若某監測點溫度與室內平均溫度avg的差值超過正數t,即為異常點。各監測點編號為1~m,其溫度值存儲于數組元素a[0]~a[m-1]中,檢測并輸出異常點編號的Python程序部分代碼如下,加框處語句有誤,請改正。i=0while i<=m-1; ifa[i]-avg>=t: print(“異常點編號為”,i+1) i=i+16.小王搭建學校閱覽室周邊噪音監測系統,現要完成服務器端程序的開發及測試。ⅰ.Web服務器結構圖如圖所示。ⅱ.服務器端程序是基于Python的Flask框架編寫,采用模板功能,根據Web網站需要實現數據顯示。網站功能頁面作用如下表。(1)該網絡架構模式為: (選填:“B/S架構”或“C/S架構”)。 (2)用Flask框架編寫應用時功能有如下選項,在下表中將代碼對應的“功能”填寫在相應列中。(A.創建應用實例/B.導入Flask模塊/C.啟用Web應用/D.創建路由)代碼 功能from flask import Flaskapp=Flask(_ _name_ _)@app.route('/ add')app.run()7.小明模擬搭建了“室內煙霧實時監控系統”,實現如下功能:(1)利用micro:bit結合煙霧傳感器對室內煙霧濃度進行監測。(2)通過串口采集傳感器的數據變化,實時傳輸到Web服務器并保存到數據庫中,以便后續進行分析。(3)使用者可對監測系統進行相關的設置,限定室內煙霧濃度的臨界值。一旦指標高于所限定的臨界值,系統將自動發出警報并開啟水泵澆水。系統通過智能終端每隔1分鐘采集一次室內環境煙霧濃度數據。其架構示意圖如圖所示:智能終端的部分程序代碼如下:#設置連接服務器參數并與智能終端建立無線連接,代碼略while True: ① =pin0.read_analog() errno,resp=Obloq.get("input id=1&val="+str(fog),10000) if errno==200: display.scroll(resp) if resp=='1': pin8.write_digital(1) #打開蜂鳴器發出警報 pin16.write_digital(1) #打開繼電器開啟水泵澆水 else: pin8.write_digital(0) #關閉蜂鳴器 pin16.write_digital(0) #關閉繼電器 else: display.show(str(errno)) ② #設置數據采集間隔時間服務器端部分程序代碼如下:from flask import Flask,requestimport sqlite3DATABASE='tdata.db'app=Flask(_ _name_ _)@app.route("/")def index(): #代碼略@app.route("/input",methods=["GET"])def mytest(): #獲取傳感器id值和環境煙霧濃度值并存儲在數據庫中 #煙霧濃度超過最大值返回“1”,否則返回“0”,代碼略if _ _name_ _=='_ _main_ _': app.run(host="192.168.1.8",port=8080,debug=True)(1)請在程序劃線處填入合適代碼。(2)若某時刻煙霧濃度值是25,根據已知的地址和端口號,則傳輸數據時使用的URL是 (單選,填字母)。 A.http:∥192.168.1.8/input id=1&val=25B.http:∥192.168.1.8:8080/input val=25C.http:∥192.168.1.8:8080/input id=1&val=25D.http:∥192.168.1.8/input val=25(3)服務器端接收傳感器數據的路由對應的視圖函數名為 。 8.小明搭建花房環境監測系統。該系統能通過傳感器獲取花房的溫度及濕度,出現異常時,通過執行器發出警報。用戶通過瀏覽器可查看實時數據及歷史數據,系統結構示意圖如圖所示。請回答下列問題:(1)該系統結構示意圖中,虛線框處應是 (單選,填字母)。 (2)小明基于FlaskWeb框架編寫服務器端的程序,部分代碼如下。測試系統時,在瀏覽器地址欄中輸入“http:∥196.168.1.10:5000/”顯示首頁數據,與該URL中路由關聯的視圖函數是 。 #導入Flask框架模塊及其他相關模塊,代碼略app=Flask(_ _name_ _)@app.route("/")def index(): #從數據庫讀取溫度和濕度數據,并返回頁面,代碼略@app.route("/search")def search(): #根據日期查詢相應數據,并返回頁面,代碼略 #服務器其他功能,代碼略(3)運行該系統,在瀏覽器地址欄中輸入URL訪問系統,系統無法正確顯示當前的溫度等數據。簡要說明系統可能造成上述問題的原因____________________________________________________(本系統中,傳感器等硬件設備及瀏覽器,不會造成上述問題)。(注:回答2項,1項正確得1分)9.(1)小明為學校搭建了環境噪音監測系統,該系統的結構示意圖如圖所示。Web服務器端采用Flask框架開發。傳感器采集的數據由智能終端經IoT模塊發送到Web服務器,Web服務器將數據保存到數據庫中。若Web服務器對外提供服務的端口是80,智能終端上某編號是2的終端發送的噪音監測值是127,則數據采集子頁面的URL是 。(單選,填字母) A.http:∥127.0.0.1/80 id=2&val=127B.http:∥192.168.113.5/indexC.http:∥192.168.113.5/add id=2&val=127D.http:∥192.168.113.5/80 id=2&val=127(2)小明的噪音監測系統受到了同學們的好評,現在他想再增加一個監測環境氣溫的功能模塊。那么除了添加相應的傳感器,實現相應的數據處理程序等步驟外,數據庫設計上還需要完成哪些步驟 _________________________________________________________________________________。10.小溫為蘆丁雞飼養箱搭建了溫度監測系統。該系統中已選擇的硬件有IoT模塊、智能終端、溫度傳感器、執行器(溫度控制器)、服務器等。服務器通過無線網絡與智能終端相連接,智能終端連接傳感器和執行器。用戶通過瀏覽器查看數據庫中的數據,在瀏覽器的地址欄中輸入http:∥192.168.0.10:500/query返回查詢結果的功能。能實現上述功能的部分代碼組合是 (單選,填字母)。 ① @app.route('/') def query(): #代碼略 ② @app.route('/query') def index(): #代碼略③target='192.168.0.10' app.run(host=target,port=5050) ④ target='192.168.0.10:5050' app.run(host=target)A.①③ B.②④C.①④ D.②③11.小明參觀校史館時發現展品老化,認為可能與校史館環境溫濕度有關,搭建校史館環境監測系統以保護展品。小明選擇的硬件有:智能終端、溫濕度傳感器、執行器(如LED燈)、服務器等。服務器通過無線網絡連接智能終端,智能終端連接傳感器和執行器,實時監測并控制校史館內的溫濕度環境,延緩展品老化,傳承校史文化。請回答下列問題:(1)該系統中關于控制與反饋的流程如下所示,①②③處填空正確的是 。(單選,填字母) A.傳感器 控制器 執行器B.控制器 執行器 傳感器C.傳感器 執行器 控制器D.控制器 傳感器 執行器(2)為方便用戶手機APP隨時隨地查看校史館溫度。該系統將要采用的開發模式為 (單選,填字母;A.B/S架構B.C/S架構)。 (3)小明用Flask框架編寫網頁實現“顯示當前溫度”,路由和視圖函數如下所示,在瀏覽器輸入網址是 即可在網頁中顯示當前溫度。 #導入Falsk框架模塊及其他相關模塊,代碼略app=Flask(_ _name_ _)server=Server(host="192.168.1.17",port=80,threaded=True)@app.route('/show')def get():#從數據庫讀取最新溫度和濕度到temp、hum并顯示,代碼略2.6 網絡應用軟件開發1.C [本題考查的是網絡應用開發概述。A選項中網絡應用軟件的實現架構有兩種;B選項中降低了系統的通信開銷和開發的難度是客戶端/服務器架構的優點;C選項正確;D選項B/S架構是隨著Internet技術的興起,對C/S架構改進后產生的一種軟件系統體系結構。]2.B3.C [本題考查的是網絡應用開發概述。瀏覽器/服務器架構,簡稱B/S架構,其優點是升級和維護很方便。]4.D [本題考查網絡開發模式。由于有Web服務器,因此該模式屬于B/S模式,服務器的負荷較重,對服務器的要求較高。故選項D描述錯誤。]5.(1)B (2)abs(a[i]-avg)>t解析 (1)提交溫濕度數據并返回提示信息的路由為set,并要拼接兩個參數。(2)兩數相減有可能出現負數,故需要利用函數abs來進行取絕對值。6.(1)B/S架構 (2)B A D C解析 (1)C/S架構是客戶端/服務器架構,客戶端主要完成用戶的具體業務,服務器端則主要提供數據管理、數據共享、系統維護和并發控制等。必須安裝客戶端軟件才能使用,給應用程序的升級和維護帶來一定的困難。而B/S架構是瀏覽器/服務器架構,B/S架構無需專門的應用程序。通過功能描述,我們可以知道該系統可通過瀏覽器來實現應用功能,而不需要安裝客戶端,故本案例屬于B/S架構。(2)通過閱讀代碼選擇相應的BADC功能。7.(1)①fog ②sleep(1000*60) (2)C (3)mytest或mytest()解析 (1)每隔1分鐘采集一次室內環境煙霧濃度數據fog。(2)從表達式Obloq.get("input id=1&val="+str(fog),10000)可以獲知路由和參數。(3)語句def mytest()定義了視圖函數。8.(1)A (2)index (3)①URL網址輸入錯誤 ②Wi-Fi信號出現故障 ③傳感器與智能終端連接出錯 ④路由錯誤 ⑤代碼有誤(比如溫度轉換的公式有誤)或其他合理答案解析 (1)服務器和數據庫之間互相進行數據的交換。(2)語句def index()定義了視圖函數。(3)略。9.(1)C (2)①增加存放氣溫值的數據表;②設計氣溫數據表的各個字段,如:氣溫值,傳感器編號,獲取時間;③若原數據庫中存在傳感器數據表,則向表中添加新的溫度傳感器信息;④編寫氣溫數據讀寫程序模塊,實現氣溫數據表的存取功能。解析 (1)從圖中可以看出采集的路由為add,同時還需要兩個參數。(2) 略。10.D [①路由為query,而不是'/'。④主機地址和端口號應分開寫,注明port參數以及該參數的值為5050。]11.(1)B (2)B (3)http:∥192.168.1.17:80/show或http:∥192.168.1.17/show解析 (1)信息系統的閉環控制,控制器控制執行器操作,執行器接收控制信息并對受控對象施加控制作用,傳感器獲取外部世界信息。根據圖示可知①為控制器、②為執行器、③為傳感器。(2)用戶通過手機APP隨時隨地查看校史館溫度,屬于C/S架構。(3)服務器地址192.168.1.17,端口為80(URL中可省略),路由為“/show”,網址為http:∥192.168.1.17:80/show或http:∥192.168.1.17/show。 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫