get方法
代碼實(shí)現(xiàn)
# coding:utf-8 import jsonfrom urlparse import parse_qsfrom wsgiref.simple_server import make_server # 定義函數(shù),參數(shù)是函數(shù)的兩個(gè)參數(shù),都是python本身定義的,默認(rèn)就行了。def application(environ, start_response): # 定義文件請(qǐng)求的類(lèi)型和當(dāng)前請(qǐng)求成功的code start_response('200 OK', [('Content-Type', 'text/html')]) # environ是當(dāng)前請(qǐng)求的所有數(shù)據(jù),包括Header和URL,body,這里只涉及到get # 獲取當(dāng)前get請(qǐng)求的所有數(shù)據(jù),返回是string類(lèi)型 params = parse_qs(environ['QUERY_STRING']) # 獲取get中key為name的值 name = params.get('name', [''])[0] no = params.get('no', [''])[0] # 組成一個(gè)數(shù)組,數(shù)組中只有一個(gè)字典 dic = {'name': name, 'no': no} return [json.dumps(dic)] if __name__ == "__main__": port = 5088 httpd = make_server("0.0.0.0", port, application) print "serving http on port {0}...".format(str(port)) httpd.serve_forever()請(qǐng)求實(shí)例
post方法
代碼實(shí)現(xiàn)
# coding:utf-8 import jsonfrom wsgiref.simple_server import make_server # 定義函數(shù),參數(shù)是函數(shù)的兩個(gè)參數(shù),都是python本身定義的,默認(rèn)就行了。def application(environ, start_response): # 定義文件請(qǐng)求的類(lèi)型和當(dāng)前請(qǐng)求成功的code start_response('200 OK', [('Content-Type', 'application/json')]) # environ是當(dāng)前請(qǐng)求的所有數(shù)據(jù),包括Header和URL,body request_body = environ["wsgi.input"].read(int(environ.get("CONTENT_LENGTH", 0))) request_body = json.loads(request_body) name = request_body["name"] no = request_body["no"] # input your method here # for instance: # 增刪改查 dic = {'myNameIs': name, 'myNoIs': no} return [json.dumps(dic)] if __name__ == "__main__": port = 6088 httpd = make_server("0.0.0.0", port, application) print "serving http on port {0}...".format(str(port)) httpd.serve_forever()請(qǐng)求實(shí)例
疑問(wèn)
怎么實(shí)現(xiàn)請(qǐng)求的路徑限制?
怎么限制接口調(diào)用方的headers?
以上這篇對(duì)Python實(shí)現(xiàn)簡(jiǎn)單的API接口實(shí)例講解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注