Django + Twilio Ошибка 500 (проблема с сессией?)
Я создал этот учебник https://github.com/TwilioDevEd/automated-survey-django и пытаюсь заставить его работать локально. Текущее поведение заключается в том, что я отправляю сообщение на номер Twilio, а затем он правильно отправляет мне первый вопрос опроса. Однако затем, когда я отправляю ответное сообщение, я не получаю ответа (должен быть второй вопрос опроса) и вижу ошибку 500 в Django. Я вижу, что второе текстовое сообщение принимается Django, и из следующей функции оно печатает HELLO. Однако оно не доходит до YEP, так что, похоже, ошибка возникает на answering_question = request.session.get('answering_question_id')
, что похоже на проблему с сессией. Я вижу, что в таблице Django_session есть новая сессия, созданная из моего первого текста. Я застрял на том, что происходит не так. request.session['answering_question_id'] устанавливается в другом месте кода, но, насколько я понимаю, если бы он не был установлен, то answering_question
было бы просто false
, а не ошибкой. Я застрял - есть какие-нибудь мысли?
def redirects_twilio_request_to_proper_endpoint(request):
print("HELLO")
answering_question = request.session.get('answering_question_id')
print("YEP")
if not answering_question:
print('1')
first_survey = Survey.objects.first()
redirect_url = reverse('survey',
kwargs={'survey_id': first_survey.id})
else:
print('2')
question = Question.objects.get(id=answering_question)
redirect_url = reverse('save_response',
kwargs={'survey_id': question.survey.id,
'question_id': question.id})
return HttpResponseRedirect(redirect_url)
Ошибка примера
[03/Jun/2022 03:34:36]"GET /automated-survey/first-survey/?ToCountry=US&ToState=CA&SmsMessageSid=SM9f799005f09308ae910a7c5af722bf76&NumMedia=0&ToCity=LOS+ANGELES&FromZip=95747&SmsSid=SM9f799005f09308ae910a7c5af722bf76&FromState=CA&SmsStatus=received&FromCity=ROSEVILLE&Body=Pink&FromCountry=US&To=%2B17472454008&ToZip=&NumSegments=1&ReferralNumMedia=0&MessageSid=SM9f799005f09308ae910a7c5af722bf76&AccountSid=ACef9b14863560f9a5b30961d21029d03c&From=%2B19164327401&ApiVersion=2010-04-01 HTTP/1.1" 500 139520