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接口的更多相关文章

  1. 用Python调用华为云API接口发短信

    [摘要] 用Python调用华为云API接口实现发短信,当然能给调用发短信接口前提条件是通过企业实名认证,而且有一个通过审核的短信签名,话不多说,showcode #!/usr/bin/python3 ...

  2. Python多线程豆瓣影评API接口爬虫

    爬虫库 使用简单的requests库,这是一个阻塞的库,速度比较慢. 解析使用XPATH表达式 总体采用类的形式 多线程 使用concurrent.future并发模块,建立线程池,把future对象 ...

  3. python使用zabbix的API接口

    一.实验环境 python3.6.6 zabbix 3.0.9 二.实验目的 了解Zabbix的API接口格式 通过python实现登陆zabbix服务,获得登陆token 通过python检索zab ...

  4. 简单实现Python调用有道API接口(最新的)

    # ''' # Created on 2018-5-26 # # @author: yaoshuangqi # ''' import urllib.request import urllib.pars ...

  5. python访问cloudstack的api接口

    1.CloudStack API 如同 AWS API 一样,CloudStack API 也是基于 Web Service,可以使用任何一种支持 HTTP 调用的语言(例如 Java,python, ...

  6. python接口测试2-开发WEB接口

    首先要安装flask包: pip install flask 开发一个简单的API接口 # 1. 导入包 from flask import Flask, request # 2. 实例化一个 app ...

  7. 没想到吧,Java开发 API接口可以不用写 Controller了

    本文案例收录在 https://github.com/chengxy-nds/Springboot-Notebook 大家好,我是小富~ 今天介绍我正在用的一款高效敏捷开发工具magic-api,顺便 ...

  8. 爬虫+django,打造个性化API接口

    简述 今天也是同事在做微信小程序的开发,需要音乐接口的测试,可是用网易云的开放接口比较麻烦,也不能进行测试,这里也是和我说了一下,所以就用爬虫写了个简单网易云歌曲URL的爬虫,把数据存入mysql数据 ...

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

    初识Django —Python API接口编程入门 一.WEB架构的简单介绍 Django是什么? Django是一个开放源代码的Web应用框架,由Python写成.我们的目标是用Python语言, ...

随机推荐

  1. Python学习笔记(四十一)— 内置模块(10)urllib

    摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432688314 ...

  2. easyui 更改dialog弹出的位置

    方法一: 在弹出dialog的时候不用$('#dialogDiv').dialog('open');打开.用$('#dialogDiv').window('open');打开.再用window的res ...

  3. 【BZOJ2882】【字符串的最小表示】工艺

    题目描述 小敏和小燕是一对好朋友. 他们正在玩一种神奇的游戏,叫Minecraft. 他们现在要做一个由方块构成的长条工艺品.但是方块现在是乱的,而且由于机器的要求,他们只能做到把这个工艺品最左边的方 ...

  4. 【BZOJ】3495: PA2010 Riddle 2-SAT算法

    [题意]有n个城镇被分成了k个郡,有m条连接城镇的无向边.要求给每个郡选择一个城镇作为首都,满足每条边至少有一个端点是首都.n,m,k<=10^6. [算法]2-SAT,前后缀优化建图 [题解] ...

  5. img图片居中

    关键词:clear: both;    display: block;    margin:auto; 图片居左,居右,居中: /* Alignment */ .alignleft { display ...

  6. MyBatis数据库字段和实体对象属性名不一致的解决方案

    数据库和对象的属性名不一致是很常见的问题,这个时候依从表字段到对象属性名的按名称匹配映射已经搞不定这个了,下面是几种解决方案. 1. 开启驼峰转换 如果数据库中的字段名与对象只是简单的不一致的话,比如 ...

  7. LOW逼三人组(三)----插入排序

    插入排序思路 插入排序算法: import random # 随机模块 import time def cal_time(func): # 装饰器 ,用来检测算法所执行的时间 def wrapper( ...

  8. Tornado/Python 学习笔记(二)

    部分ssrpc.py代码分析 -- 服务端: 1 #!/usr/bin/python3 2 3 from xmlrpc.client import Fault, dumps, loads 4 impo ...

  9. Django 1.10中文文档-第一个应用Part7-自定义管理站点

    开发第一个Django应用,Part7 本教程上接Part6.将继续完成这个投票应用,本节将着重讲解如果用Django自动生成后台管理网站. 自定义管理表单 通过admin.site.register ...

  10. python基础===python自带idle的快捷键

    Ctrl + [ Ctrl + ]   缩进代码Alt+3 Alt+4 注释.取消注释代码行Alt+5 Alt+6 切换缩进方式 空格<=>TabAlt+/ 单词完成,只要文中出现过,就可 ...