Error : Web push send from python backend to fire base using VAPI keys. Unhashable type:'slice'
See original GitHub issueI have trouble getting pywebpush work for my python backend on gcp.
VAPI PUBLIC KEY and PVT KEY obtained from firebase dash board thourhg manual creation
#subscriptionObject comes from Angular front end. It used the VAPI PUBLIC KEY to receive the object. I used the package versions specified in requirement.txt. The call happens from a Flask app route.
webpush(subscription_info = subscriptionObject, data=notificationMessageObject, vapid_private_key=VAPID_PRIVATE_KEY, vapid_claims={"sub": "mailto:mycontact_supplied_at_fire_base_bashboard@mydomain.com"})
Error
Traceback (most recent call last): File “/usr/local/lib/python3.7/site-packages/flask/app.py”, line 2292, in wsgi_app response = self.full_dispatch_request() File “/usr/local/lib/python3.7/site-packages/flask/app.py”, line 1815, in full_dispatch_request rv = self.handle_user_exception(e) File “/usr/local/lib/python3.7/site-packages/flask_cors/extension.py”, line 110, in wrapped_function return cors_after_request(app.make_response(f(*args, **kwargs))) File “/usr/local/lib/python3.7/site-packages/flask/app.py”, line 1718, in handle_user_exception reraise(exc_type, exc_value, tb) File “/usr/local/lib/python3.7/site-packages/flask/_compat.py”, line 35, in reraise raise value File “/usr/local/lib/python3.7/site-packages/flask/app.py”, line 1813, in full_dispatch_request rv = self.dispatch_request() File “/usr/local/lib/python3.7/site-packages/flask/app.py”, line 1799, in dispatch_request return self.view_functionsrule.endpoint File “/app/main.py”, line 428, in notify_one_device webpush(subscription_info = subsObject, data=notificationMessageObject, vapid_private_key=VAPID_PRIVATE_KEY, vapid_claims={“sub”: “mailto:mymail_configured_at_firebase_dashboard@mycontact.com”}) File “/usr/local/lib/python3.7/site-packages/pywebpush/init.py”, line 485, in webpush timeout=timeout, File “/usr/local/lib/python3.7/site-packages/pywebpush/init.py”, line 305, in send encoded = self.encode(data, content_encoding) File “/usr/local/lib/python3.7/site-packages/pywebpush/init.py”, line 219, in encode version=content_encoding) File “/usr/local/lib/python3.7/site-packages/http_ece/init.py”, line 394, in encrypt content[i:i + chunk_size], TypeError: unhashable type: ‘slice’
Please guide how I should approach this.
Issue Analytics
- State:
- Created 2 years ago
- Comments:6 (2 by maintainers)

Top Related StackOverflow Question
For web push alone, I went for nodejs service. Rest of my back end is in python.
On Tue, 23 Aug 2022, 22:31 Carlos Mesas, @.***> wrote:
Ok, I will try to work with the private key in PEM format from the file directly.