zoukankan      html  css  js  c++  java
  • 模板替换实现数据驱动,api通用封装

    原理

    封装api

    import requests
    class BaseApi:
        def request_http(self,req):
            # 直接用关键字传参方式,把请求提传给requests.request方法,**解码字典
           r = requests.request(**req)
           #print(r.json())
           return r
    

    调用

    import  requests
    import yaml
    from string import Template
    
    from api.base_api import BaseApi
    class GetToken(BaseApi):
        _corpid = "xxxx"
        _corp_secret = "yyyy"
        def template(self):
            with open("../api/gettoken.yaml") as f:
                data = {
                    "corpid": self._corpid,
                    "corp_secret": self._corp_secret
                }
                re = Template(f.read()).substitute(data)
                return yaml.safe_load(re)
    
    
        def get_token(self):
        
            req = self.template()
            r = self.request_http(req)
    
            #r = requests.request(**req)
            #等同于下面这个
            #r = requests.request(method="get",url="https://qqyapi.weixin.qq.com/cgi_bin/gettoken",params={"corpid":self._corpid,"corp_secret": self._corp_secret})
            print(r.json)
            return r
    
        def add_token(self):
            pass
    if __name__ == '__main__':
        ba = GetToken()
        ba.get_token()
    

  • 相关阅读:
    小程序排错(redis导致)
    linux系统删除-开头文件或目录
    nginx 反向代理
    memcache
    一次故障过程
    json.Decoder vs json.Unmarshal
    ssl中间证书
    作业10:String类
    Angular6如何引入jQuery-knob
    OpenJdk源码下载
  • 原文地址:https://www.cnblogs.com/aowumiaomiao/p/15402997.html
Copyright © 2011-2022 走看看