Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 什么是蟒蛇的等价物;泡菜“;在nodejs中_Python_Node.js_Amqp - Fatal编程技术网

Python 什么是蟒蛇的等价物;泡菜“;在nodejs中

Python 什么是蟒蛇的等价物;泡菜“;在nodejs中,python,node.js,amqp,Python,Node.js,Amqp,Python的一个特性是pickle函数,它允许您存储任意内容,并将其完全还原为原始形式。一种常见的用法是获取一个完全实例化的对象,并将其pickle以供以后使用。在我的例子中,我有一个不可序列化的AMQP消息对象,我希望能够将它存储在会话存储中并检索它,这可以通过pickle来实现。主要区别在于我需要对对象调用方法,而不仅仅是查找数据 但是这个项目在nodejs中,似乎所有node的低级库都必须有某种方法来保存这个对象,这样它才能在web调用之间保持不变 用例是一个web页面拾取RabbitM

Python的一个特性是pickle函数,它允许您存储任意内容,并将其完全还原为原始形式。一种常见的用法是获取一个完全实例化的对象,并将其pickle以供以后使用。在我的例子中,我有一个不可序列化的AMQP消息对象,我希望能够将它存储在会话存储中并检索它,这可以通过pickle来实现。主要区别在于我需要对对象调用方法,而不仅仅是查找数据

但是这个项目在nodejs中,似乎所有node的低级库都必须有某种方法来保存这个对象,这样它才能在web调用之间保持不变


用例是一个web页面拾取RabbitMQ消息并显示从中派生的信息。在消息被执行之前,我不想确认消息。我通常只会将数据保存在会话状态,但这不是一个选项,除非我能以某种方式将其保存为原始形式。

据我所知,JavaScript(或标准节点库)中没有与pickle等效的工具。

请查看它是否符合您的需要。我不确定它是否像pickle一样完整,但它非常棒


免责声明:模块作者和我是同事。

请参阅pickle js项目:

另外,请访问findbestopensource.com:

js是Python pickle格式的JavaScript实现。它支持包含基元类型的跨语言子集的pickle。pickle.js和pickle.py之间的主要区别:文本pickle仅对某些类型进行无损转换(例如int),不支持某些类型(例如class)


此处提供更多信息:

什么是“AMQP消息对象”?为什么它不能序列化?序列化听起来像是对任何可以称为“消息”的东西所能做的主要事情之一——你应该如何发送它,否则?@Karl这不是实际的消息,而是处理消息的类。另外,函数在大多数格式中都是不可序列化的,只有数据。因为我想在以后调用对象上的.acknowledge()方法,所以我想存储它。存储对象实例实际上是脆弱的,因为您仍然需要原始源代码,在包层次结构的原始位置,来重建它。最好只是整理数据。对于Node,json似乎是一个自然的选择。我真的不明白为什么这个问题被否决了两次,并且没有任何评论。如果你不告诉他们为什么就投了反对票,你怎么能期望有人改进问题?我不知道为什么这个问题会被否决。它清晰、简洁、相关。谢谢你的链接。不幸的是,对我来说很重要的类型是“功能”,我认为你的项目没有。我承认这是一个非常奇怪的用例。你提到。。。也许一年前,我编写了一个小实用程序来序列化JS中的/store/hydrogate函数,我将尝试挖掘它。没有把它放在github上,在这里想“还有谁会想要水合功能?”,更新并上传-肯定不是Pickle的替代品,但它确实处理功能:@hunterloftis这很酷。这肯定会在许多项目上派上用场。谢谢