!hCswSvPiuoEdnthwje:matrix.org

Python 中文交流群

254 Members
本群与 Telegram 群组 https://t.me/py_zh_real 桥接。6 Servers

Load older messages


SenderMessageTime
26 Sep 2022
@telegram_5716680502:t2bot.ioTwitter/TG/电报/币用/非小号/Facebook增粉,点赞,评论,广告推广,群用户在线. TG客服1:@hing1 客服2:@concoq joined the room.05:58:02
@telegram_818375384:t2bot.ioa little sorcerer
In reply to Specter119·穷途而狂·三 张
pandas 这个新版本的 warning 真的是好迷啊 https://github.com/pandas-dev/pandas/issues/48673
它的 warning 似乎不能关,还有 copy or view..
06:31:25
@telegram_57247691:t2bot.ioSpecter119·穷途而狂·三 张
In reply to a little sorcerer
它的 warning 似乎不能关,还有 copy or view..
我在 ipython profile 里把 FutureWaring 全 ignore 了,没办法 jupyter 里太烦了。
07:06:30
@telegram_818375384:t2bot.ioa little sorcerer 🥲感觉 httpx 没有开放 middleware 有些可惜,像 auth2.0 token 这样需要刷新的场景特别合适。我目前只好悄悄 hook Client.request 12:53:54
@telegram_818375384:t2bot.ioa little sorcerer * 🥲感觉 httpx 没有开放 middleware 有些可惜,像 auth2.0 token 这样需要刷新的场景特别合适,可以自动给 request 加上 auth 信息,如果过期报错就刷新,然后重发。我目前只好悄悄 hook Client.request 12:54:53
@telegram_818375384:t2bot.ioa little sorcerer * 🥲感觉 httpx 没有开放 middleware 有些可惜,像 auth2.0 token 这样需要刷新的场景特别合适,可以自动给 request 加上 auth 信息,如果过期报错就刷新,然后重发一次,user code 就 hassle free~ 😮‍💨 我目前只好悄悄 hook Client.request 12:55:45
@telegram_313927976:t2bot.io依云
In reply to a little sorcerer
🥲感觉 httpx 没有开放 middleware 有些可惜,像 auth2.0 token 这样需要刷新的场景特别合适。我目前只好悄悄 hook Client.request
我都是自己写个类的
12:56:32
@telegram_818375384:t2bot.ioa little sorcerer
In reply to 依云
我都是自己写个类的
是继承 Client 吗?
13:00:33
@telegram_313927976:t2bot.io依云
In reply to a little sorcerer
是继承 Client 吗?
组合,不继承
13:07:21
@telegram_818375384:t2bot.ioa little sorcerer
In reply to 依云
组合,不继承
组合岂不得要重写每一个 methods 以保持 interface 一致吗?🤔 比如这个能自动刷新 token 的 Client 需要支持 GET, POST, DELETE, PUT... 我想到 hook .request 可以一下搞定。而组合却还是要写那 4 个 method
13:13:11
@telegram_173328889:t2bot.ioBruceutut 🐰
In reply to a little sorcerer
组合岂不得要重写每一个 methods 以保持 interface 一致吗?🤔 比如这个能自动刷新 token 的 Client 需要支持 GET, POST, DELETE, PUT... 我想到 hook .request 可以一下搞定。而组合却还是要写那 4 个 method
我是自己写 decorator 处理的
13:27:43
@telegram_173328889:t2bot.ioBruceutut 🐰 changed their display name from Bruceutut 🐰 「小孩梓 Lv.24」 to Bruceutut 🐰.13:27:46
@telegram_313927976:t2bot.io依云
In reply to a little sorcerer
组合岂不得要重写每一个 methods 以保持 interface 一致吗?🤔 比如这个能自动刷新 token 的 Client 需要支持 GET, POST, DELETE, PUT... 我想到 hook .request 可以一下搞定。而组合却还是要写那 4 个 method
为什么要保持一致?
13:30:13
@telegram_818375384:t2bot.ioa little sorcerer
In reply to 依云
为什么要保持一致?
不保持一致也可以(那应该就做得比较 high-level 了),但我在这只想要自动 auth 这一个 feature,如果之后需要,可以在这上面继续抽象
13:37:38
@telegram_818375384:t2bot.ioa little sorcerer* 不保持一致也可以(那应该就做得比较抽象了),但我在这只想要自动 auth 这一个 feature,如果之后需要,可以在这上面继续抽象13:37:55
@telegram_818375384:t2bot.ioa little sorcerer* 不保持一致也可以(那应该就做得比较抽象了),但我在这只想要自动 auth 这一个 feature,如果之后需要,可以在继续这个 client 继续抽象13:38:17
@telegram_818375384:t2bot.ioa little sorcerer* 不保持一致也可以(那应该就做得比较抽象了),但我在这只想要自动 auth 这一个 feature,如果之后需要,可以在基于这个 client 继续抽象13:38:25
@telegram_818375384:t2bot.ioa little sorcerer
In reply to Bruceutut 🐰
我是自己写 decorator 处理的
我的写法应该类似 decorator
kwargs["headers"]["Authorization"] = self._token
response = super().request(*args, **kwargs)
try:
    payload = response.json()
    assert "code" in payload
    assert payload["code"] != "expired"
    return payload
except:
    self._refresh_token()
    kwargs["headers"]["Authorization"] = self._token
    return super().request(*args, **kwargs)
13:42:02
@telegram_818375384:t2bot.ioa little sorcerer * 我的写法应该类似 decorator

def request(self, *args, **kwargs) -> httpx.Response:
    kwargs["headers"]["Authorization"] = self._token
    response = super().request(*args, **kwargs)
    try:
        payload = response.json()
        assert "code" in payload
        assert payload["code"] != "expired"
        return payload
    except:
        self._refresh_token()
        kwargs["headers"]["Authorization"] = self._token
        return super().request(*args, **kwargs)
13:42:36
@telegram_173328889:t2bot.ioBruceutut 🐰
In reply to a little sorcerer
我的写法应该类似 decorator
kwargs["headers"]["Authorization"] = self._token
response = super().request(*args, **kwargs)
try:
    payload = response.json()
    assert "code" in payload
    assert payload["code"] != "expired"
    return payload
except:
    self._refresh_token()
    kwargs["headers"]["Authorization"] = self._token
    return super().request(*args, **kwargs)
13:43:11
@telegram_818375384:t2bot.ioa little sorcerer super().request(*args, **kwargs) 写了两段,不能用 lambda😂 13:44:13
29 Sep 2022
@telegram_5682121406:t2bot.ioTwitter/TG/电报/币用/非小号/Facebook增粉,点赞,评论,广告推广,群用户在线. TG客服1:@hing1 客服2:@concoq joined the room.11:11:50
30 Sep 2022
@telegram_1947197536:t2bot.io老鼠 changed their display name from 林阁祁 to 老猫.03:16:20
@telegram_1947197536:t2bot.io老鼠 changed their profile picture.03:16:31
1 Oct 2022
@telegram_1947197536:t2bot.io老鼠 changed their display name from 老猫 to sinofine.07:26:28
@telegram_1947197536:t2bot.io老鼠 changed their profile picture.16:10:21
@telegram_1947197536:t2bot.io老鼠 changed their display name from sinofine to 老鼠.16:23:14
2 Oct 2022
@romeow:tchncs.deromeow joined the room.04:06:38
@telegram_1947197536:t2bot.io老鼠 changed their profile picture.16:11:30
3 Oct 2022
@telegram_5630280555:t2bot.ioBoby Kitty joined the room.10:41:07

There are no newer messages yet.


Back to Room List