python-----编写接口,使用postman与soapiu访问调用

实例:自己写一个注册接口 输入用户名、密码、验证码,当满足注册将密码进行md5加密。
场景
接口返回参数
提示
用户名存在
2000
exit 用户已存在
密码与验证码不相等
3000
wrong 密码不一致
注册成功
1000
 
insert 插入成功
URL与传入参数
接口访问地址
http://127.0.0.1:9009/regist
请求方式
Post
传入参数
username 用户名
password 密码
cpassword 确认密码
 
Mysql数据库
信息
Ip
192.168.*.*
用户名
root
密码
12345
数据库选用
t2
表名
test2
表结构
name char(10),pw char(50)

----------------------------代码---------------------------------------------------------------------------------

#写一个注册接口,输入用户名、密码、验证码:# 如果用户存在,返回2000(exit 用户已存在);# 如果密码与验证码不一致,返回3000(wrong 密码不一致);# 如果注册成功,返回1000(insert 插入成功)

#注意:#1、接口返回json.dumps(res, ensure_ascii=False)#2、接口中的sql语句传递变量%s 需要“”;#   sql = ‘insert into test2(name,pw) values ("%s","%s")‘ % (username, new_password)#3、md5加密,参数需要encode,返回值需要hexdigest()import flaskimport requestsimport jsonimport pymysqlimport hashlib

MYSQL_INFO = {   ‘host‘:‘192.168.*.*‘,   ‘user‘:‘root‘,   ‘password‘:‘12345‘,   ‘port‘:3306,   ‘db‘:‘t2‘,   ‘charset‘:‘utf8‘,    ‘autocommit‘:‘True‘}#数据库配置信息

def my_db(sql,**kwargs):   host=kwargs.get(‘host‘)   user = kwargs.get(‘user‘)   password = kwargs.get(‘password‘)   port = kwargs.get(‘port‘)   db = kwargs.get(‘db‘)   charset = kwargs.get(‘charset‘)   autocommit = kwargs.get(‘autocommit‘)

coon = pymysql.connect(host=host, user=user, password=password, port=port, db=db, charset=charset,autocommit=autocommit)   cur = coon.cursor()   cur.execute(sql)   sql_start=sql[:6].lower()   if sql.startswith(‘select‘) or sql.startswith(‘show‘):      data=cur.fetchall()   else:      data=‘OK‘   cur.close()   coon.close()   print(data)   return data

def md_5(pd):    newpd = hashlib.md5(pd.encode())    #  print(newpd.hexdigest())    return newpd.hexdigest()

server = flask.Flask(__name__)@server.route(‘/regist‘,methods=[‘get‘,‘post‘])def regist():    username = flask.request.values.get(‘username‘)    password = flask.request.values.get(‘password‘)    cpassword = flask.request.values.get(‘cpassword‘)

sql = ‘select * from test2 where name="%s"‘ %username    all_data=my_db(sql,**MYSQL_INFO)    print(all_data)    if all_data:        res = {‘code‘: ‘2000‘, ‘msg‘: ‘exit 用户已存在‘}    else:        new_password=md_5(password)        print(new_password)        if password==cpassword:            sql = ‘insert into test2(name,pw) values ("%s","%s")‘ % (username, new_password)            my_db(sql, **MYSQL_INFO)            res = {‘code‘: ‘1000‘, ‘msg‘: ‘insert 插入成功‘}        else:            res = {‘code‘: ‘3000‘, ‘msg‘: ‘wrong 密码不一致‘}    return json.dumps(res, ensure_ascii=False)

if __name__ == "__main__":    server.run(port=9009, debug=True)

---------------------------用postman与soapui访问------------------------------------------

postman访问

3)soapui访问

注意:soapui新建rest项目时,需要输入网址,系统自动分开方填入reques界面第一行。

A:新建rest项目

B:输入url:

c:输入参数



原文地址:https://www.cnblogs.com/wenchengqingfeng/p/10119100.html

时间: 2024-11-02 07:24:34

python-----编写接口,使用postman与soapiu访问调用的相关文章

python编写接口

python编写api接口

 目标: 使用Python实现一个简单的接口服务,可以通过get.post方法请求该接口,拿到响应数据.创建一个api_server.py文件, 想要实现的效果是这样的: 添加代码如下:  1 import flask,json 2 from flask import request 3 4 ''' 5 flask: seb框架,通过flask提供的装饰器@server.route()将普通函数转换为服务 6 登录接口,需要传入url,username,passwd 7 ''' 8 9 #创建一

python编写登录接口(上)

中途经过了好几天都没有动手了,得坚持下去啊刚看了Alex老师的视频,其中有个题目如下:编写登录接口-输入用户密码-认证成功后显示欢迎信息-输错三次后锁定 # -*- coding: cp936 -*-#用户名保存在一个文件名为user.txt文件中import os,stringtmp=file('C:\Users\hityxg\Desktop\user.txt')username=file('C:\Users\hityxg\Desktop\username.txt','w')b=tmp.rea

python编写登录接口

python编写登录接口 一.需求 编写登录接口: 1.输入用户名和密码登录 2.输错三次锁定账户 3.下次登录还是上次的账户,提示锁定,直接退出(用到文件读写) 4.成功 后显示登录成功 二.需求流程图 三.代码示例 例1: #!/bin/bash/env python #_*_ coding:utf-8 _*_ #python version:3.6 ''' 编写登录接口:     1.输入用户名和密码登录     2.输错三次锁定账户     3.下次登录还是上次的账户,提示锁定,直接退出

Python Mongodb接口

Python Mongodb接口 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. 同时,MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是NoSQL的优秀实现. 本文记录使用PyMongo模块,用Python调用MongoDB 工具类实现 from pymongo import MongoClient mongodb_name = 'dev_map' client = MongoClient("mon

python+requests接口自动化测试框架实例详解教程

转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自

python+requests接口自动化测试框架实例详解

前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自己写python的接口自动化测试框架,由于本人也是刚学习python,这套自动化框架目前已经基本完成了,于是进行一些总结,便于以后回顾温习,有许多不完善的地方,也遇到

python/c++接口库比较(SWIG,boost.python, pycxx, py++, sip, Weave, Pyrex )

<python/c++接口库比较(SWIG,boost.python, pycxx, py++, sip, Weave, Pyrex )>http://blog.csdn.net/lainegates/article/details/19565823 目前有很多开源的Python/c++ 绑定工具,搜了好多岾子,这里稍微总结下. SWIG 支持 Python 2 and 3 配置正确的话,可以全自动完成封装(*.i文件需要自己写) 当不是全自动的时候,它大多会重复你的.h文件并给出提示 除了P

用Python编写博客导出工具

用Python编写博客导出工具 罗朝辉 (http://kesalin.github.io/) CC 许可,转载请注明出处 写在前面的话 我在 github 上用 octopress 搭建了个人博客,octopress 使用Markdown语法编写博文.之前我在CSDN博客上也写过不少的技术博文,都说自己的孩子再丑也是个宝,所以就起了把CSDN博客里面的文章导出到个人博客上的念头.刚开始想找个工具把CSDN博客导出为xml或文本,然后再把xml或文本转换为Markdown博文.可惜搜了一下现有博