Django-PayPal IPN не работает
Я использую Django-PayPal в качестве платежного решения в моем приложении Django. Я пытаюсь реализовать обработчик IPN.
Что происходит, когда я получаю сообщение IPN по URL-адресу обработки IPN, когда сервер django дает сбой:
Traceback (most recent call last):
File "/usr/local/lib/python2.6/dist-packages/django/core/servers/basehttp.py", line 281, in run
self.finish_response()
File "/usr/local/lib/python2.6/dist-packages/django/core/servers/basehttp.py", line 321, in finish_response
self.write(data)
File "/usr/local/lib/python2.6/dist-packages/django/core/servers/basehttp.py", line 417, in write
self._write(data)
File "/usr/lib/python2.6/socket.py", line 300, in write
self.flush()
File "/usr/lib/python2.6/socket.py", line 286, in flush
self._sock.sendall(buffer)
error: [Errno 104] Connection reset by peer
Мои платежные приложения urls.py выглядят так:
urlpatterns = patterns('mysite.payment.views',
(r'^thank_you/', 'thank_you'),
(r'^canceled/', 'canceled'),
(r'^paypal-ipn/', include('paypal.standard.ipn.urls'))
)
Для меня сообщение об ошибке довольно бесполезно. Было бы здорово, если бы кто-то мог мне помочь.
2 ответа
Я признаю, что я идиот:)
Вам не нужно SSL для этого. Но вам нужно сделать syncdb, прежде чем вы сможете его использовать,...
Боже, иногда это так легко, что ты просто не видишь этого.
Можете ли вы точно отслеживать пакет, который PayPal отправляет на ваш сервер, используя tcpdump
или проволочная акула? Похоже, что они могут преждевременно разорвать соединение, но трудно сказать многое без более длительного отслеживания и / или дампа пакетов.
Изменить: я забыл о сообщениях https. Paypal, вероятно, требует HTTPS для этих обратных вызовов. Сервер разработки не будет поддерживать это, так что, к сожалению, вам, вероятно, потребуется конкретизировать конфигурацию вашего сервера, прежде чем вы сможете протестировать эту функциональность.