0

我知道有很多类似这个问题的问题,但我真的需要你的帮助。我正在尝试通过电子邮件验证激活帐户,但我无法激活我发送的链接,没有激活帐户。

urlpatterns = [
path('admin/', admin.site.urls),
path('auth/', include('authapp.urls'))]

这是我的主要网址。在 authapp 中我写了这些网址。

urlpatterns = [
path('', include('djoser.urls')),
path('', include('djoser.urls.authtoken')),
path('activation/<str:uid>/<str:token>/', UserActivationView.as_view()),]

我的设置是这样的:

 DJOSER = {
'LOGIN_FIELD':'email',
'USER_CREATE_PASSWORD_RETYPE':True,
'SERIALIZERS':{
    'user_create':'authapp.serializer.UserCreateSerializer',
    'user': 'authapp.serializer.UserCreateSerializer',


},
"ACTIVATION_URL": 'auth/request_activate/{uid}/{token}',
"SEND_ACTIVATION_EMAIL": True,
}

这是我的 view.py:

from rest_framework.response import Response
from rest_framework.views import APIView

import requests


    class UserActivationView(APIView):
        def get (self, request, uid, token):
            protocol = 'https://' if request.is_secure() else 'http://'
            web_url = protocol + request.get_host()
            post_url = web_url + "/auth/users/activation/"
            post_data = {'uid': uid, 'token': token}
            result = requests.post(post_url, data = post_data)
            content = result.text()
            return Response(content)

我几乎尝试了所有解决方案,但没有奏效。我希望你们能帮助我。谢谢。

4

1 回答 1

0
"ACTIVATION_URL": 'auth/activation/{uid}/{token}', 

这是正确的形式。

于 2020-09-15T14:34:58.130 回答