首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PubNub消息加密

PubNub消息加密
EN

Stack Overflow用户
提问于 2021-11-14 23:06:23
回答 1查看 34关注 0票数 0

公平的警告,我不是一个程序员,做这件事更多的是作为一种爱好。感谢您花时间审阅这篇文章并提供建议。

我有一个python的列表: 60.0,0.0,0.0,0.0,347.0,30.0,29.0,1.0,我想发布到带有加密的pubnub上。我已经设法在没有加密的情况下发布了。

作品:

代码语言:javascript
复制
    msg = {"freq" : modbusRead[0],
           "voltage" : modbusRead[1],
           "rpm" : modbusRead[2]
           }

    readSecret = pubnub.publish().channel(CHANNEL).message(msg).pn_async(publish_callback)

不起作用:

代码语言:javascript
复制
     msg = {"freq" : modbusRead[0],
           "voltage" : modbusRead[1],
           "rpm" : modbusRead[2]
           }

    secretMsg = pubnub.encrypt("RandomCipherKey", msg)

    readSecret = pubnub.publish().channel(CHANNEL).message(secretMsg).pn_async(publish_callback)

我得到以下错误:

TypeError:+:'dict‘和'bytes’不支持的操作数类型

EN

回答 1

Stack Overflow用户

发布于 2021-11-15 12:13:37

看起来您试图将dict传递给方法,而该方法本应为bytes。方法签名解释here和使用示例如下所示:

代码语言:javascript
复制
payload_to_encrypt = b'knights_who_say_ni'
encrypted_payload = pubnub.encrypt("test_cipher_key", payload_to_encrypt)

此外,如果没有计划从Python客户端发送推送通知,则可以配置所有发送/接收的数据都将使用相同的令牌进行加密/解密(在这种情况下,您不必处理encrypt方法的数据序列化)。

检查PNConfiguration对象中的cipher_key

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69967913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档