Python实现简单的API接口

Posted 青春追寻梦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python实现简单的API接口相关的知识,希望对你有一定的参考价值。

get方法

代码实现

  1.  
    # coding:utf-8
  2.  
     
  3.  
    import json
  4.  
    from urlparse import parse_qs
  5.  
    from wsgiref.simple_server import make_server
  6.  
     
  7.  
     
  8.  
    # 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
  9.  
    def application(environ, start_response):
  10.  
    # 定义文件请求的类型和当前请求成功的code
  11.  
    start_response(‘200 OK‘, [(‘Content-Type‘, ‘text/html‘)])
  12.  
    # environ是当前请求的所有数据,包括Header和URL,body,这里只涉及到get
  13.  
    # 获取当前get请求的所有数据,返回是string类型
  14.  
    params = parse_qs(environ[‘QUERY_STRING‘])
  15.  
    # 获取get中key为name的值
  16.  
    name = params.get(‘name‘, [‘‘])[0]
  17.  
    no = params.get(‘no‘, [‘‘])[0]
  18.  
     
  19.  
    # 组成一个数组,数组中只有一个字典
  20.  
    dic = {‘name‘: name, ‘no‘: no}
  21.  
     
  22.  
    return [json.dumps(dic)]
  23.  
     
  24.  
     
  25.  
    if __name__ == "__main__":
  26.  
    port = 5088
  27.  
    httpd = make_server("0.0.0.0", port, application)
  28.  
    print "serving http on port {0}...".format(str(port))
  29.  
    httpd.serve_forever()

 

请求实例

技术分享图片

post方法

代码实现

  1.  
    # coding:utf-8
  2.  
     
  3.  
    import json
  4.  
    from wsgiref.simple_server import make_server
  5.  
     
  6.  
     
  7.  
    # 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
  8.  
    def application(environ, start_response):
  9.  
    # 定义文件请求的类型和当前请求成功的code
  10.  
    start_response(‘200 OK‘, [(‘Content-Type‘, ‘application/json‘)])
  11.  
    # environ是当前请求的所有数据,包括Header和URL,body
  12.  
     
  13.  
    request_body = environ["wsgi.input"].read(int(environ.get("CONTENT_LENGTH", 0)))
  14.  
    request_body = json.loads(request_body)
  15.  
     
  16.  
    name = request_body["name"]
  17.  
    no = request_body["no"]
  18.  
     
  19.  
    # input your method here
  20.  
    # for instance:
  21.  
    # 增删改查
  22.  
     
  23.  
    dic = {‘myNameIs‘: name, ‘myNoIs‘: no}
  24.  
     
  25.  
    return [json.dumps(dic)]
  26.  
     
  27.  
     
  28.  
    if __name__ == "__main__":
  29.  
    port = 6088
  30.  
    httpd = make_server("0.0.0.0", port, application)
  31.  
    print "serving http on port {0}...".format(str(port))
  32.  
    httpd.serve_forever()

 


请求实例

技术分享图片

以上是关于Python实现简单的API接口的主要内容,如果未能解决你的问题,请参考以下文章

python编写api接口

Python实现简单的API接口--wsgiref模块--解决:**self.status.split(' ',1)[0], self.bytes_sent**报错

Python实现简单的API接口--wsgiref模块--解决:**self.status.split(' ',1)[0], self.bytes_sent**报错

初识Django —Python API接口编程入门

python实现快递鸟即时查询API接口 数据签名验证

Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段