网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
4.1 接口数据文件处理
框架中使用草料二维码的get和post接口用于demo测试,比如:
get接口:https://cli.im/qrcode/getDefaultComponentMsg
返回值:{“code”:1,“msg”:“”,“data”:{xxxxx}}
数据文件这里选择使用Json格式,文件内容格式如下,test_http_get_data.json:
{ "dataItem": [ { "id": "testget-1", "name": "草料二维码get接口1", "headers":{ "Accept-Encoding":"gzip, deflate, br" }, "url":"/qrcode/getDefaultComponentMsg", "method":"get", "expectdata": { "code": "1" } },
{ "id": "testget-2", "name": "草料二维码get接口2", "headers":{}, "url":"/qrcode/getDefaultComponentMsg", "method":"get", "expectdata": { "code": "1" } } ]}
表示dataitem下有两条case,每条case里面声明了id, name, header, url, method, expectdata。如果是post请求的话,case中会多一个parameters表示入参,如下:
{ "id":"testpost-1", "name":"草料二维码post接口1", "url":"/Apis/QrCode/saveStatic", "headers":{ "Content-Type":"application/x-www-form-urlencoded", "Accept-Encoding":"gzip, deflate, br" }, "parameters":{ "info":11111, "content":11111, "level":"H", "size":500, "fgcolor":"#000000", "bggcolor":"#FFFFFF", "transparent":"false", "type":"text", "codeimg":1 }, "expectdata":{ "status":"1", "qrtype":"static" }}
为了方便一套脚本用于不同的环境运行,不用换了环境后挨个儿去改数据文件,比如
测试环境URL为:https://testcli.im/qrcode/getDefaultComponentMsg
生产环境URL为:https://cli.im/qrcode/getDefaultComponentMsg
因此数据文件中url只填写后半段,不填域名。然后config》global_config.py下设置全局变量来定义域名:
# 配置HTTP接口的域名,方便一套脚本用于多套环境运行时,只需要改这里的全局配置就OKCAOLIAO_HTTP_POST_HOST = "https://cli.im"CAOLIAO_HTTP_GET_HOST = "https://nc.cli.im"