Я немного посмотрел, много где что добавил, переписал. И пришел примерно к следующему. Удобнее сделать не дерево из Exception а послать прямо текстовое сообщение на выход:
try:
poll = Poll.objects.get(pk=poll_pk)
if poll.queue:
if not authpass(request.user, poll.queue):
return HttpResponse('Non-authenticated users can\'t vote', status=400)
chosen_items = simplejson.loads(request.GET['chosen_items'])
except:
return HttpResponse('Wrong parameters', status=400)