W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
如果你研究 Flask WSGI 應(yīng)用內(nèi)部如何工作,你會(huì)找到和這非常相似的一段代碼:
def wsgi_app(self, environ):
with self.request_context(environ):
try:
response = self.full_dispatch_request()
except Exception, e:
response = self.make_response(self.handle_exception(e))
return response(environ, start_response)
request_context() 方法返回一個(gè)新的 RequestContext 對(duì)象,并結(jié)合 with 聲明來綁定上下文。 從相同線程中被調(diào)用的一切,直到 with 聲明結(jié)束前,都可以訪問全局的請(qǐng)求 變量( flask.request 和其它)。
請(qǐng)求上下文內(nèi)部工作如同一個(gè)棧。棧頂是當(dāng)前活動(dòng)的請(qǐng)求。 push() 把上下文添加到棧頂, pop() 把它移出棧。在出棧時(shí),應(yīng)用的 teardown_request() 函數(shù)也會(huì)被執(zhí)行。
另一件需要注意的事是,請(qǐng)求上下文被壓入棧時(shí),并且沒有當(dāng)前應(yīng)用的應(yīng)用上下文, 它會(huì)自動(dòng)創(chuàng)建一個(gè) 應(yīng)用上下文 。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: