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. HTML入门(二)表格_字体_超链接_布局

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. 【BZOJ】4293: [PA2015]Siano 线段树上二分

    [题意]给定n棵高度初始为0的草,每天每棵草会长高a[i],m次收割,每次在d[i]天将所有>b[i]的草收割到b[i],求每次收割量.n<=500000. [算法]线段树上二分 [题解] ...

  3. 【CodeForces】908 D. New Year and Arbitrary Arrangement

    [题目]Good Bye 2017 D. New Year and Arbitrary Arrangement [题意]给定正整数k,pa,pb,初始有空字符串,每次有pa/(pa+pb)的可能在字符 ...

  4. 【转载】iPhone系统概览

    iPhone OS OverviewiPhone系统概览iPhone OS comprises the operating system and technologies that you use t ...

  5. MySql 复制表命令

    1.只复制表结构到新表 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2; 或 CREATE TABLE 新表 LIKE 旧表 ; 注意上面两种方式,前一种方式是不 ...

  6. Java读取大文件的高效率实现

    1.概述 本教程将演示如何用Java高效地读取大文件.这篇文章是Baeldung (http://www.baeldung.com/) 上“Java——回归基础”系列教程的一部分. 2.在内存中读取 ...

  7. 【译】Linux提权基础

    英文原文: Basic Linux Privilege Escalation 在开始之前,我想指出 - 我不是专家. 据我所知,在这个巨大的领域没有一个“魔法”的答案. 这只是我的发现,写出来,共享而 ...

  8. python笔记之BytesIO

    1. 什么是BytesIO BytesIO与StringIO类似,不同的是StringIO只能存放string,BytesIO是用来存放bytes的,它提供了在内存中读写字节的能力. 即在内存中读写字 ...

  9. PHP对象3: public / private / protected

    <?php /* public 可继承, 内外可访问 private 不可, 只内部访问 protected 可继承, 只内部 */ class A{ protected $name; priv ...

  10. USB各种模式 解释

    1.MTP: 通过MTP这种技术,可以把音乐传到手机里.有了U盘功能为什么还要多此一举呢?因为版权问题,MTP可以把权限文件从电脑上导过去:如果只使用手机的U盘功能,把歌的文件拷过去之后,没有权限文件 ...