Actually handling the correct headers

This commit is contained in:
Jens Alm
2013-05-30 13:10:58 +02:00
parent 4e81e5d5e8
commit a0da0ea713
2 changed files with 2 additions and 2 deletions

View File

@@ -67,7 +67,7 @@ class DjrillWebhookSignatureMixinTests(TestCase):
def test_signature(self): def test_signature(self):
signature = hmac.new(key=b(settings.DJRILL_WEBHOOK_SIGNATURE_KEY), msg = b(settings.DJRILL_WEBHOOK_URL+"mandrill_events[]"), digestmod=hashlib.sha1) signature = hmac.new(key=b(settings.DJRILL_WEBHOOK_SIGNATURE_KEY), msg = b(settings.DJRILL_WEBHOOK_URL+"mandrill_events[]"), digestmod=hashlib.sha1)
hash_string = b64encode(signature.digest()) hash_string = b64encode(signature.digest())
response = self.client.post('/webhook/?secret=abc123', data={"mandrill_events":"[]"}, **{"X-Mandrill-Signature" : hash_string}) response = self.client.post('/webhook/?secret=abc123', data={"mandrill_events":"[]"}, **{"HTTP_X_MANDRILL_SIGNATURE" : hash_string})
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
def tearDown(self): def tearDown(self):

View File

@@ -118,7 +118,7 @@ class DjrillWebhookSignatureMixin(object):
raise ImproperlyConfigured( raise ImproperlyConfigured(
"You have set DJRILL_WEBHOOK_SIGNATURE_KEY, but haven't set DJRILL_WEBHOOK_URL in the settings file.") "You have set DJRILL_WEBHOOK_SIGNATURE_KEY, but haven't set DJRILL_WEBHOOK_URL in the settings file.")
signature = request.META.get("X-Mandrill-Signature", None) signature = request.META.get("HTTP_X_MANDRILL_SIGNATURE", None)
if not signature: if not signature:
return HttpResponse(status=403, content="X-Mandrill-Signature not set") return HttpResponse(status=403, content="X-Mandrill-Signature not set")