我正在嘗試在Tornado中編寫一個應用程序,該應用程序在收到包含類別的POST請求後,會調用一個函數來阻止HTTP請求到一個RSS列表(包含在CouchDB數據庫中),然後對數據執行一些排序,將字典返回給Tornado異步請求處理程序。到目前爲止,用戶第一次訪問它似乎工作得相當好。龍捲風:在異步處理程序中阻止HTTP請求
對同一頁面的第二次POST請求,它通常會合並從多個類別收集的結果,就好像每個類別的函數調用都由於某種原因而合併。我是事件驅動編程的新手,我不知道爲什麼會發生這種情況。這會變得一團糟,因爲用戶將點擊一個類別並獲得兩者的結果。
這裏有點結構的示意圖:
Calls: Tornado Async Handler -> get_data(category) -> RSS_handler(RSS_feed)
Returns: self.write(data) <- more_data <- some_data
任何想法,爲什麼這些電話越來越結合起來呢?我的RSS處理程序類清除了其init函數中的所有成員變量,就像執行處理的get_data函數一樣。
(會一直包含的代碼,但是有太多的它確實貼在這裏,我不知道哪條線是造成它)
開始記錄一些數據,發現奇怪的是,它使用的是我已經有的類的一部分(RSS處理程序的一部分)。奇怪!但是,多虧了你的回答,我解決了它。欣賞它! –