在 我使用python压缩字符串数据并将数据存储在sqlite3中。对于我的项目,我还需要使用节点.js提取数据。问题是,当我试着这么做的时候。我收到一个错误节点.js公司名称:
{错误:头检查不正确 在Gunzip.zlibOnError公司(zlib.js:153:15)错误号:-3,代码:“Z_DATA_ERROR”}
我尝试用Python中的Base64和utf8对字符串进行编码。两者都没什么区别。在
在JavaScript中,我尝试跳过一些编码数据,这样就可以克服头部检查问题。这也是徒劳的。在
下面是python中的压缩代码 在
import zlib, base64
import time
text = 'STACK OVERFLOW STACK OVERFLOW STACK OVERFLOW STACK OVERFLOW '
textToBytes = text.encode('utf-8')
code = zlib.compress(textToBytes)
code = base64.b64encode(code)
print('code in base64:', code)
timestamp = time.time()
#Store in database
conn = sqlite3.connect('testsDummy.db')
c = conn.cursor()
c.execute("CREATE TABLE IF NOT EXISTS tests (id INTEGER PRIMARY KEY, timestamp REAL, code TEXT)")
conn.commit()
c.execute("INSERT INTO tests (code ,timestamp) VALUES (?,?)",(code ,timestamp))
conn.commit()
conn.close()
现在这是代码输入节点.js在
^{pr2}$
Python中的
zlib.compress
(没有wbits
参数)将生成zlib格式,而节点.js应为gzip格式。使用zlib.compress
,其中wbits
等于31以获得gzip格式,或者在中使用zlib.inflate
节点.js解压缩zlib格式。在相关问题 更多 >
编程相关推荐