python - 在 Apex 中压缩字符串并将其解压缩 python
问题描述
在 Salesforce 中,我们触发一个平台事件并将有效负载添加到该平台事件的字段 Payload__c (LongText)。
我们在 python 中创建了一个流式客户端,它订阅此平台事件并使用有效负载。
因为有时候payload非常大,我们想出了在salesforce端压缩,在python端解压payload的想法。
我们找到了 Apex 的 lib https://github.com/bilalfastian/LZ4String。所以我们目前正在做的是使用方法压缩payload:compressToBase64(payload)并将其作为base64存储在平台事件中。
在 python 中,我们尝试了不同的方式,但我们无法解压缩。lib https://github.com/eduardtomasek/lz-string-python示例:
在顶点:
String test = 'Hello world';
String comp = LZString.compressToBase64 (test);
System.debug(comp);
// Output is 0oXjgLbmg7ZA7rqQ4pyw04gA
现在我尝试在 python 中解压这个字符串:
base64_message = '0oXjgLbmg7ZA7rqQ4pyw04gA'
w=x.decompresFromBase64(base64_message)
logger.error(w)
Output is just: -
解决方案
推荐阅读
- bash - 使用 sudoers 来限制 www-data 的脚本文件?(nohup)
- unix - 在 UNIX 中替换文件末尾的十六进制分隔符和额外字符
- javascript - Esri JS Api 4.18 需要 node_models 的 ncp 副本以用于 BUILD 和 START。我需要复制资产以在 storybook.js 中工作吗?
- angular - Angular向构造函数添加服务导致没有内容显示
- jwt - 为什么 Quarkus JWT 在每个端点上都未经授权返回
- c# - 如何使用 void OnTriggerEnter2D 禁用脚本?
- javascript - 是否可以使用 HERE API 获取城市的所有地区
- java - GitHub API 未创建文件
- flutter - Flutter Dropdownbutton选择的值没有改变
- android - 将手机位置从移动应用程序发送到服务器的最佳方式是什么?