2013-04-25 2 views
0

장고의 견해를 통해 Google의 pubsubhubbub 게시자에게 http://pubsubhubbub.appspot.com을 부릅니다. 나는 그것을 사용하여 모든 YouTube 업로드 피드를 가져오고 싶습니다. urllib2.Request를 사용하여 'post'요청을 보내고 있으며 409 충돌 오류가 발생합니다. 제대로 설치 콜백 URL이 있고 같은 요청을 사용하여 게시하려고하면 : python manage shell 완벽하게 작동합니다. 프로덕션 서버에서 gunicorn 인스턴스에 프록시로 nginx 서버를 사용하고 있습니다. 무엇이 잘못되었을 수 있습니다. 미리 감사드립니다.Urllib2 POST 요청으로 인해 409 충돌 오류가 발생했습니다

>>> response.request 
<PreparedRequest [POST]> 
>>> response.request.headers 
{'Content-Length': u'303', 'Content-Type': 'application/x-www-form-urlencoded', 'Accept-Encoding': 'gzip, deflate, compress', 'Accept': '*/*', 'User-Agent': 'python-requests/1.2.0 CPython/2.6.6 Linux/2.6.18-308.8.2.el5.028stab101.3'} 
>>> response.request.body 
'hub.verify=sync&hub.topic=http%3A%2F%2Fgdata.youtube.com%2Ffeeds%2Fapi%2Fusers%2FUCVcFOpBmJqkQ4v6Bh6l1UuQ%2Fuploads%3Fv%3D2&hub.lease_seconds=2592000&hub.callback=http%3A%2F%2Fhypedsound.cloudshuffle.com%2Fhub%2F19%2F&hub.mode=subscribe&hub.verify_token=subscribe7367add7b116969a44e0489ad9da45ca8aea4605' 

요청 본문, 헤더는 생성 된 두 요청에 대해 동일합니다. 그것은 내가 model.save()가 문제를 만드는 한, 호출 될 때 dB로 범하지 않는 TransactionMiddleware을 사용하고 있었다 밝혀 http://dpaste.org/bOwHO/

+0

Wireshark (http://www.wireshark.org/)를 다운로드하여 서로 다른 두 가지 호출에 대해 송수신되는 패킷을 검사하여 서로 다른 점을 확인해야합니다. – Danack

답변

0

:

는 여기의 nginx 설정 파일입니다.

관련 문제