3 Stimmen

"Objekt vom Typ 'NoneType' hat kein len()" bei Verwendung von pusher mit Django

Ich habe eine sehr einfache und von der Anleitung Pusher Trigger in meinem django app implementiert. Zunächst funktionierte es gut, aber nach ein paar Übertragungen lief ich in die folgende Ausnahme:

"object of type 'NoneType' has no len()"

Aus der zweiten der folgenden Zeilen:

p = pusher.Pusher()
p[page_key].trigger('page_update', {'msgid' : message.id})

Ein anderes oder leeres Diktat führte zum gleichen Ergebnis, ebenso wie das Ändern von page_key in string statt unicode - nichts. Beachten Sie auch, dass type() von p und p.trigger logische Ergebnisse liefert, und die sind definitiv nicht None.

Diese Zeile funktioniert in einigen Fällen (von denen ich keine Ahnung habe, was so besonders an ihnen ist) und hat in der Vergangenheit funktioniert, wie ich bereits erwähnt habe, doch ich kann nicht herausfinden, was ich falsch mache.

Es scheint, dass keiner der letzten Commits etwas mit Pusher zu tun hat, also bin ich hilflos. Die Suche im Web nach dieser Ausnahme war überhaupt nicht fruchtbar und im Allgemeinen gibt es nicht genug Dokumentation in Bezug auf django + Pusher.

Wahrscheinlich mache ich etwas anderes falsch, aber ich habe keine Ahnung, wo ich anfangen soll zu suchen.

Für jede Hilfe sind wir dankbar.

Traceback:

  79.         p[page_key].trigger('page_update', {'msgid' : message.id})
File "/usr/local/lib/python2.7/dist-packages/pusher/__init__.py" in trigger
  41.         status = self.send_request(self.signed_query(event, json_data, socket_id), json_data)
File "/usr/local/lib/python2.7/dist-packages/pusher/__init__.py" in signed_query
  54.         signature = hmac.new(self.pusher.secret, string_to_sign, hashlib.sha256).hexdigest()
File "/usr/lib/python2.7/hmac.py" in new
  133.     return HMAC(key, msg, digestmod)
File "/usr/lib/python2.7/hmac.py" in __init__
  68.         if len(key) > blocksize:

Exception Type: TypeError at /sphere/comment
Exception Value: object of type 'NoneType' has no len()

2voto

Skylar Saveland Punkte 10479

Self.pusher.secret ist dort None anstelle eines Strings. Werden Ihre Einstellungen für pusher nicht übernommen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X