当我发送HTTP POST请求为用户创建访问令牌时,参数client_id
,client_secret
,username
,password
等,发送到我的localhost运行Django(v1.7)后,我得到一个访问令牌作为响应。
但是当我对在Elastic Beanstalk上部署的Django(v1.7)做同样的事情时,我得到了
/ oauth2 / access_token
中的TypeError__ init __()得到了一个意外的关键字参数'mimetype'
我以前在使用Django 1.8时遇到此错误,但之后我降级为Django 1.7并且此错误得到了解决。这一切都是在localhost本地完成的。但是当我部署到beanstalk时,即使在那里部署的版本是1.7,我也会再次收到此错误。
答案 0 :(得分:1)
发生此错误是因为删除了Django 1.7(https://github.com/django/django/commit/8eadbc5a03d06f5bfedfa3fad35ad0801d2ab6ff)的mimetype到HttpResponse。
我相信有些可能性,
您可以使用其他解决方案作为django-oauth-toolkit;
您可以更改第491行 https://github.com/caffeinehit/django-oauth2-provider/blob/master/provider/views.py#L491 使用content_type而不是mimetype;
或者你可以使用已经解决它的glassjistor用户开发的django-oauth2-provider fork。在这种情况下,您可以:
使用pip安装
$ pip install https://github.com/glassresistor/django-oauth2-provider/archive/stable.zip#django-oauth2-provider
或直接在requirements.txt中添加:
-e git+https://github.com/glassresistor/django-oauth2-provider.git#egg=django-oauth2-provider