重慶分公司,新征程啟航
為企業(yè)提供網站建設、域名注冊、服務器等服務
為企業(yè)提供網站建設、域名注冊、服務器等服務
很多api的結果大概都是下面這個樣子,如:
創(chuàng)新互聯(lián)是專業(yè)的海寧網站建設公司,海寧接單;提供成都網站建設、成都做網站,網頁設計,網站設計,建網站,PHP網站建設等專業(yè)做網站服務;采用PHP框架,可快速的進行海寧網站開發(fā)網頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網站,專業(yè)的做網站團隊,希望更多企業(yè)前來合作!
eg:url地址+參數1+參數2
這個跟回調沒有關系啊,就是請求一個地址給你返回參數。
但是如果改成:
eg:url地址+參數1+參數2+callback函數
這樣請求成功后,再調用callback函數,才叫回調。
如果解決了您的問題請采納!
如果未解決請繼續(xù)追問
python回調函數的使用方法
在計算機程序設計中,回調函數,或簡稱回調(Callback),是指通過函數參數傳遞到其它代碼的,某一塊可執(zhí)行代碼的引用。這一設計允許了底層代碼調用在高層定義的子程序
有兩種類型的回調函數:
那么,在python中如何實現回調函數呢,看代碼:
代碼如下:
def my_callback(input):
print "function my_callback was called with %s input" % (input,)
def caller(input, func):
func(input)
for i in range(5):
caller(i, my_callback)
我以最簡單的代碼給你演示一下
def sum(a,b):
... print a+b
...
sum(1,2)
3
def callBack(c,sum):
... print c
... sum(5,c)
...
callBack(5,sum)
5
10
sum 就是被回調的函數
回調函數就是在A函數執(zhí)行完畢之后 再執(zhí)行B函數 那么B就是回調函數
回調函數,顧名思義,也就是等該函數執(zhí)行完了,會回去調用我們傳進去的函數。用到回調函數的地方有不少,像我見過的:SQLite中的一個函數,sqlite_exec函數名有沒有記錯我沒什么印象了。待這個函數執(zhí)行完畢后,會去調用我傳進去的一個函數,一般回調函數都是有自己的參數列表格式的,再利用這個格式從回調函數中獲取到我們需要的一些值。
之前一直知道裝飾器可以增強一個已經存在的方法,Python也提供了annotation的方法,很好用. 但是再看flask login的擴展包的時候. 發(fā)現裝飾器還可以實現回調函數的注冊功能.
flask login就是通過下面的裝飾器,來注冊回調函數,當沒有sessionID時,通過裝飾器指定的函數來讀取用戶到session中.
@login_manager.user_loader
下面寫了一個簡單的測試例子來演示這個功能.
import time
import functools
class Test():
#/**feature將調用callback(), 但是在Test中并沒有真正的定義callback**/
def feature(self):
self.callback()
def decorate(self, func):
self.callback=func
return func
test = Test()
#/**將foo注冊為回調函數*//
@test.decorate
def foo():
print 'in foo()'
#/**調用feature將觸發(fā)回調函數**/
test.feature()