Jinja2:将十六进制转换为 Base64

Jinja2: Converting hex to Base64

这可能吗?

假设我有一个十六进制值 32ABE23,是否有过滤器将其显示为 Base64? 好吧,我看到有| b64encode 过滤器。

我尝试关注但没有成功

{{ 32ABE23 | string() | b64encode }}

我明白了

TemplateAssertionError: no filter named 'b64encode'

您可以在 Jinja2 中定义自己的过滤器:

import base64
def b64encode(s):
    return base64.b64encode(s)

jinja2_environment.filters['b64encode'] = b64encode

当然可以简化为:

import base64
jinja2_environment.filters['b64encode'] = base64.b64encode