mozilla-services / push-dev-dashboard

Developer dashboard for the Mozilla web push service
https://dev-dashboard.deis.dev.mozaws.net/
Mozilla Public License 2.0
7 stars 6 forks source link

Handle 204 No Content from push messages API #185

Closed groovecoder closed 8 years ago

groovecoder commented 8 years ago

Steps to reproduce:

  1. Register and validate a push application

Expected results: Redirected to push application details page, which shows messages or a "No messages to display" screen

Actual results:

ValueError at /en/push/apps/17/
No JSON object could be decoded

Traceback:

File "/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  149.                     response = self.process_exception_by_middleware(e, request)

File "/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  147.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/usr/local/lib/python2.7/site-packages/django/views/generic/base.py" in view
  68.             return self.dispatch(request, *args, **kwargs)

File "/usr/local/lib/python2.7/site-packages/django/contrib/auth/mixins.py" in dispatch
  116.         return super(UserPassesTestMixin, self).dispatch(request, *args, **kwargs)

File "/usr/local/lib/python2.7/site-packages/django/views/generic/base.py" in dispatch
  88.         return handler(request, *args, **kwargs)

File "/usr/local/lib/python2.7/site-packages/django/views/generic/base.py" in get
  157.         context = self.get_context_data(**kwargs)

File "/usr/src/app/push/views.py" in get_context_data
  57.             app_messages = push_app.get_messages()

File "/usr/src/app/push/models.py" in get_messages
  166.             return resp.json()

File "/usr/local/lib/python2.7/site-packages/requests/models.py" in json
  808.         return complexjson.loads(self.text, **kwargs)

File "/usr/local/lib/python2.7/json/__init__.py" in loads
  339.         return _default_decoder.decode(s)

File "/usr/local/lib/python2.7/json/decoder.py" in decode
  364.         obj, end = self.raw_decode(s, idx=_w(s, 0).end())

File "/usr/local/lib/python2.7/json/decoder.py" in raw_decode
  382.             raise ValueError("No JSON object could be decoded")

Exception Type: ValueError at /en/push/apps/17/
Exception Value: No JSON object could be decoded