Fix python3 qrcode and some bugs

This commit is contained in:
Chiaki 2017-05-01 15:20:13 +08:00
parent 043f8c8b26
commit d11f8f9bff
3 changed files with 11 additions and 3 deletions

View File

@ -1,10 +1,12 @@
from django.conf.urls import url
from ..views.oj import (ApplyResetPasswordAPI, ResetPasswordAPI,
UserChangePasswordAPI, UserLoginAPI, UserRegisterAPI)
UserChangePasswordAPI, UserRegisterAPI,
UserLoginAPI, UserLogoutAPI)
urlpatterns = [
url(r"^login/?$", UserLoginAPI.as_view(), name="user_login_api"),
url(r"^logout/?$", UserLogoutAPI.as_view(), name="user_logout_api"),
url(r"^register/?$", UserRegisterAPI.as_view(), name="user_register_api"),
url(r"^change_password/?$", UserChangePasswordAPI.as_view(), name="user_change_password_api"),
url(r"^apply_reset_password/?$", ApplyResetPasswordAPI.as_view(), name="apply_reset_password_api"),

View File

@ -52,6 +52,12 @@ class UserLoginAPI(APIView):
return self.success({})
class UserLogoutAPI(APIView):
def get(self, request):
auth.logout(request)
return self.success({})
class UserRegisterAPI(APIView):
@validate_serializer(UserRegisterSerializer)
def post(self, request):

View File

@ -1,5 +1,5 @@
import os
from io import StringIO
from io import BytesIO
import qrcode
from django.conf import settings
@ -140,7 +140,7 @@ class TwoFactorAuthAPI(APIView):
config = WebsiteConfig.objects.first()
image = qrcode.make(OtpAuth(token).to_uri("totp", config.base_url, config.name))
buf = StringIO()
buf = BytesIO()
image.save(buf, "gif")
return HttpResponse(buf.getvalue(), "image/gif")