代码问题,这几个token是怎么来传递或着定义的,2个get——token可以删除吗,写的意义是什么

class Calendar(FeiShuApi):

def __init__(self, token, env=None, **kwargs):
    super().__init__(token)
    self.calendar_id = kwargs.get('calendar_id')
    self.color = kwargs.get('color')
    self.description = kwargs.get('description')
    self.permissions = kwargs.get('permissions')
    self.role = kwargs.get('role')
    self.summary = kwargs.get('summary')
    self.summary_alias = kwargs.get('summary_alias')
    self.type = kwargs.get('type')

    # self.host=env

def get_token(self):
    return self.token

class FeiShuApi(HttpApi):

def __init__(self, token):
    self.token = token
    self.env = None
    self.host = 'https://open.feishu.cn'

def get_token(self):
    pass

class FeiShu(HttpApi):
token: str = None

def __init__(self, app_id='cli_a1ab4fb2d038d00e', app_secret='oiiObdMSkuthZxuUckSw4eozGBtjuU88'):
    self.token: str = None
    self.app_id = app_id
    self.app_secret = app_secret

def get_token(self):
    url = 'https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal'

    if self.token is None:
        j = self.request(
            url=url,
            method='post',
            json={
                'app_id': self.app_id,
                'app_secret': self.app_secret
            }
        )
        self.token = j['tenant_access_token']
    return self.token

18期飞书的token,写这样怎么理解,token哪来的

get_token 的实现最终是落到了最后的那个module,你要获取的话最终都是调用的它
然后在逻辑方面每一个api object有它的实现逻辑,这些api都需要token,所以从逻辑上讲都需要获取对应的token,不同的api可能需要的token是不一样的,所以在调用的时候可以区分传值

你好,那第二个类方法get_token为什么是pass,

表示是由子类去实现,自己不实现。其实就是接口定义。

明白了一点。。谢谢老师

关闭