我在Django视图中有以下函数:
from django_twilio.decorators import twilio_view
@twilio_view
def index(request):
twim = "<Response><Message>Hello World!</Message></Response>"
return HttpResponse(twim, content_type='text/html')
它是通过'http://www.foo.com/bar‘路径访问的。我已经将我的Twilio帐户设置为发布到该帐户。每次我发送短信时,我都会收到一个403错误。
在调试模式下,或者当DJANGO_TWILIO_FORGERY_PROTECTION
设置为False时,它工作得很好,所以我可以合理地确定twilio_view
没有正确地验证它。它获得了正确的URI (request.build_absolute_uri()
提供了与测试客户端相同的路径),并且也具有正确的AUTH令牌。我几乎检查了所有我可以手动计算TWILIO_SIGNATURE
的地方,我不认为我有这个技能。有没有什么明显的Django/Heroku/Twilio陷阱我遗漏了?
发布于 2014-08-07 20:54:16
我是django-twilio库的维护者。首先,你使用的是什么版本的django-twilio?
运行pip freeze以检查:
$ pip freeze
...
django-twilio==0.7.1
我建议升级到0.7.1并尝试一下,看看它是否解决了这个问题。我刚刚推出了一个与此相关的更新,所以它可能会修复它。
你能打开一个issue on github以防这是一个更大的问题吗?
编辑: 0.7.1中引入的bug意味着您应该使用pip恢复到0.7:
$ pip uninstall django-twilio
...
$ pip install django-twilio==0.7
https://stackoverflow.com/questions/25175633
复制相似问题