美文网首页
Web API07-列表数据对象转换json字符串

Web API07-列表数据对象转换json字符串

作者: 筱媛媛 | 来源:发表于2019-07-10 18:31 被阅读0次

前面几节内容介绍了基本的增加课程,列出课程,修改课程以及删除课程来实现自动化用例。而参数传递都是简单的字符串,实际工作中如果遇到较复杂的列表数据对象将如何处理传参呢?本篇内容主要以“python中列表数据对象转换为json字符串”进行讲解。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步!

01:json

1)把python中的数据对象变成json中的字符串:json.dumps(courses)

2)把json中的字符串变成python中的数据对象:json.loads(courses)

02:增加老师接口文档内容
(1)请求语法:POST /api/mgr/sq_mgr/ HTTP/1.1
(2)请求体类型:Content-Type:   application/x-www-form-urlencoded
(3)请求体内容:
action  必填  填写add_teacher,表明是为了创建老师
data    必填  存储创建老师的信息,包括登录名、密码、真实姓名、描述信息、教授课程、显示次序。为json格式。例如:
{
    "username":"wangxiaoer",
    "password":"sq888",
    "realname":"王小二",
    "desc":"王小二老师",
    "courses":[{"id":419,"name":"初中数学"},{"id":420,"name":"初中英语"}],
    "display_idx":1
}
03:定义增加老师函数
import  requests
from pprint import pprint
import src.api.config as config
import json
# courses参数只需要传入python列表对象即可,格式如下:
# [{"id":419,"name":"初中数学"},{"id":420,"name":"初中英语"}]
def add_teacher(username,password,realname,desc,courses,display_idx):
    body={
        'action': 'add_teacher',
        'data': f'''
        {{
    "username":"{username}",
    "password":"{password}",
    "realname":"{realname}",
    "desc":"{desc}",
    "courses":{json.dumps(courses)},
    "display_idx":{display_idx}
}}'''}
    res = requests.post(f'http://{config.api_server}/api/mgr/sq_mgr/',
                        data=body,
                        cookies={'sessionid':g_sessionid})
    ret_obj = res.json()
    pprint(ret_obj)
    return ret_obj
04:随机生成指定位数大小写字母(random.sample())

1)概述:从指定序列中随机获取指定长度的片段

2)参数:第一个参数代表指定序列,第二个参数是需获取的片段长度

3)实例:sli = random.sample(string.ascii_letters, 3)

import random,string
#从a-zA-Z生成指定数量的随机字符
name = ''.join(random.sample(string.ascii_letters, 5))
print(name)
05:调用增加老师函数
#先添加一门课程确保老师有课可教
    course_name = 'python_' + str(random.randint(0, 100000000))
    addcourse_ret = add_course(course_name,
                            'python基础课程',
                            '1')
    course_id=addcourse_ret['id']
 #增加一名老师
    username = 'teacher' + str(random.randint(0, 100000000))
    name = ''.join(random.sample(string.ascii_letters, 5))
    addteacher_ret = add_teacher(username,
                            '123456',
                             name,
                             name+'老师',
                             [{"id":course_id,"name":course_name}],
                             '1')

相关文章

  • Web API07-列表数据对象转换json字符串

    前面几节内容介绍了基本的增加课程,列出课程,修改课程以及删除课程来实现自动化用例。而参数传递都是简单的字符串,实际...

  • JSON库

    JSON库将json对象或节点转换成字典、将json数组转换成列表、将json字符串转换成python字符串,tr...

  • js如何将json字符串互相转换为json对象

    json字符串 json对象 一、JSON字符串转换为JSON对象 二、JSON对象转换为JSON字符串

  • 字符串、json字符串、json数组(列表)、json对象之间相

    .将java对象转换为json字符串先将java对象转换为json对象,在将json对象转换为json字符串JSO...

  • js/json

    js对象转换字符串:JSON.stringify(要转换的对象)json字符串转换成js对象:JSON.parse...

  • js/json

    js对象转换字符串:JSON.stringify(要转换的对象) json字符串转换成js对象:JSON.pars...

  • js以及json

    js对象转换字符串:JSON.stringify(要转换的对象)json字符串转换成js对象:JSON.parse...

  • js/json

    js对象转换字符串:JSON.stringify(要转换的对象)json字符串转换成js对象:JSON.parse...

  • js/json

    js对象转换字符串:JSON.stringify(要转换的对象)json字符串转换成js对象:JSON.parse...

  • js/json

    js对象转换字符串:JSON.stringify(要转换的对象) json字符串转换成js对象:JSON.pars...

网友评论

      本文标题:Web API07-列表数据对象转换json字符串

      本文链接:https://www.haomeiwen.com/subject/ziqihctx.html