Metadata-Version: 2.4
Name: longbao-urllib
Version: 0.2.0
Summary: url信封，将原始链接放在信封内，可以安全的在get请求中传输，在接收到后打开还原请求链接
Requires-Python: >=3.12
Description-Content-Type: text/markdown

该项目用于将url经过base64转码后可以安全的在http请求参数中传输

### encode-decode 过程
原始链接的encode和decode对应方法

```python
from longbao_urllib import UrlEnvelop
import time

host = "http://localhost:8000"
# 创建一个url信封，compress用于对参数进行压缩
wrapper = UrlEnvelop(
        f"{host}/api/ad/callback?q1=123&q2=234&q3=456&q4=78911",
        compress=True,
    )
# 返回可以放在query中的参数
raw = wrapper.url_encode(
        f"{host}/api/ad/mock/kuaishou/callback?cid=123&pid=xyzxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyxxxxxxxxxxxxxxxxxxxxxxxx",
        clickid="xx-yy-zz")


decoded_url = wrapper.url_decode(raw, conv_type=1, conv_ts=time.time(), clickid="xx-yy-zz")
```
### 参数 wrap-upwrap 过程

```python
from longbao_urllib import UrlEnvelop

host = "http://localhost:8000"
wrapper = UrlEnvelop(
        f"{host}/api/ad/callback?q1=123&q2=234&q3=456&q4=78911",
        compress=True,
    )
# 将原始链接包裹后的新的链接
url1 = wrapper.wrap(
    f"{host}/api/ad/mock/kuaishou/callback?callback=123&pid=xyz",
    request_id="xx-yy-zz",
)
# 打开后返回原始的链接
url2 = wrapper.unwrap(
    url1,
    request_id="xx-yy-ww",
)
```