-
Notifications
You must be signed in to change notification settings - Fork 197
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow to configure msgpack serialization and deserialization #287
Comments
Both implementations allow you to override So, you can call msgpack with other arguments (or even not use msgpack at all). Does that achieve what you need? |
Hi @acu192 thanks for your quick reply. It looks like more a workaround than a durable solution. If the |
Yeah the original impl does more stuff in those methods. On the other hand, the pubsub impl has simpler methods to override. In either case, this is how you can customize the serialization/de-serialization procedures. |
Thanks I will try to do my own implementation in this case. |
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
The channel layer provided by channel_redis use msgpack to serialize and deserialize messages. We have a problem when a video is serialized. It is impossible then to deserialize it because in the urls the resolution can be used as key and those keys are integer. Msgpack is unable to deserialize this kind of key. As suggested in the issue[1] open on channel_redis git repository we implement our own serialize and deserialize methods. 1: django/channels_redis#287
Feature Request
Is your feature request related to a problem or unsupported use case? Please describe.
msgpack
is able to serialize data and is not able to deserisliaze the data previously serialized. For example if I send this message:When I will receive it, I will have a
msgpack
error:Describe the solution you'd like
I understand using
strict_map_key=False
can be a security risk as explain in the msgpack readme but I would like to configure the parameters used bymsgpack.packb
andmsgpack.unpackb
or at least don't allow to send a message that can't be deserialized. This configuration can maybe added to theRedisChannelLayer
andRedisPubSubChannelLayer
__init__
constructor ?I wrote a failing test to reproduce my case:
The text was updated successfully, but these errors were encountered: