Maison >développement back-end >Tutoriel Python >Comment appeler l'interface API en python

Comment appeler l'interface API en python

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-06-13 17:33:5829139parcourir

Comment python appelle l'interface API :

Protocole d'interface : http, webservice, rpc, etc.

Méthode de requête : get, méthode de publication

Format du paramètre de requête :

 a Les requêtes Get se font toutes via url?param=xxx¶m1=xxx

b. Les types courants de paramètres de demande pour les demandes de publication sont : application/json, application/x-www-form-urlencoded, multipart/form-data, text/html, etc.

Vous devez également connaître l'URL de l'interface, le type de paramètre, le format de données du résultat renvoyé et si l'interface contient un en-tête, un cookie et d'autres informations.

Recommandations associées : "Tutoriel vidéo Python"

Comment appeler l'interface API en python

méthode get

# coding:utf-8 
import json
from urlparse import parse_qs
from wsgiref.simple_server import make_server  
# 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
def application(environ, start_response):
    # 定义文件请求的类型和当前请求成功的code
    start_response('200 OK', [('Content-Type', 'text/html')])
    # environ是当前请求的所有数据,包括Header和URL,body,这里只涉及到get
    # 获取当前get请求的所有数据,返回是string类型
    params = parse_qs(environ['QUERY_STRING'])
    # 获取get中key为name的值
    name = params.get('name', [''])[0]
    no = params.get('no', [''])[0] 
    # 组成一个数组,数组中只有一个字典
    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()

Instance de requête

Comment appeler linterface API en python

méthode de publication

# coding:utf-8 
import json
from wsgiref.simple_server import make_server
# 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
def application(environ, start_response):
    # 定义文件请求的类型和当前请求成功的code
    start_response('200 OK', [('Content-Type', 'application/json')])
    # environ是当前请求的所有数据,包括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()

Instance de requête

Comment appeler linterface API en python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn