我正在使用DREF和Djoser进行身份验证和用户注册。当新用户注册时,Djoser将发送激活电子邮件,其中包含执行GET请求的链接。为了激活,我需要从激活URL中提取uid和token并向POST请求Djoser激活用户。
我的环境是Python 3和Django 1.11,Djoser 1.0.1。
有关如何在Django / Djoser中处理此问题的任何帮助?
我想做的是在Django中处理get请求,提取uid和token,然后发出POST请求。我已经提取了uid和token,并希望进行POST(在此GET请求中)。我不知道如何在后台发出此POST请求。
附加代码:
我的网址是这样的:http
:
//127.0.0.1
:
8000/auth/users/activate/MQ/4qu-584cc6772dd62a3757ee
当我单击此按钮(通过电子邮件发送GET请求)时。
我在Django视图中处理此问题。
该视图需要发出这样的POST请求:
http://127.0.0.1:8000/auth/users/activate/
数据= [(’uid’=’MQ’),(’token’=‘4qu-584cc6772dd62a3757ee’),]
我对GET的看法是:
from rest_framework.views import APIView
from rest_framework.response import Response
import os.path, urllib
class UserActivationView(APIView):
def get (self, request):
urlpathrelative=request.get_full_path()
ABSOLUTE_ROOT= request.build_absolute_uri('/')[:-1].strip("/")
spliturl=os.path.split(urlpathrelative)
relpath=os.path.split(spliturl[0])
uid=spliturl[0]
uid=os.path.split(uid)[1]
token=spliturl[1]
postpath=ABSOLUTE_ROOT+relpath[0]+'/'
post_data = [('uid', uid), ('token', token),]
result = urllib.request.urlopen(postpath, urllib.parse.urlencode(post_data).encode("utf-8"))
content = result.read()
return Response(content)
views.py
from rest_framework.views import APIView
from rest_framework.response import Response
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/activate/"
post_data = {'uid': uid, 'token': token}
result = requests.post(post_url, data = post_data)
content = result.text()
return Response(content)
urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^auth/users/activate/(?P<uid>[\w-]+)/(?P<token>[\w-]+)/$', UserActivationView.as_view()),
]
我正在为我的a-Level做一个编程课程,我被一个问题困住了。我希望你们中的一个能帮助我。 我正在建立一个会员系统,目前我正处于电子邮件激活阶段。通过使用连接数据库的php和mysqli编码,我已经能够将电子邮件激活链接设置为工作状态,以便当用户单击激活链接时,它通过将“活动”数据库字段从“0”设置为“1”来激活用户的帐户。 我唯一的问题是,如果用户在电子邮件中再次单击激活链接,因为用户已经处于活
您可以通过此界面创建和管理域的电子邮件帐户。 您可以创建电子邮件地址,配置邮件客户端,更改密码以及直接访问您的Webmail。 创建电子邮件地址 要为您的域创建电子邮件地址,请按以下步骤操作 - Step 1 - 单击cPanel主页的“电子邮件”部分中的“ Email Accounts链接。 Step 2 - 在电子邮件帐户中,您会在顶部找到添加电子邮件帐户。 Step 3 - 添加您要创建的电
我正在提示我的应用程序用户提供电子邮件凭据。 在用户插入电子邮件并通过后,我想验证该帐户。 我正在使用javax。邮政有没有办法验证帐户?只确保凭据确实有效——否则我想显示一个无效用户并传递消息。 也许是某种表演方式: 并在不发送任何内容的情况下检查身份验证异常。
本文向大家介绍PHP用户注册邮件激活账户的实现代码,包括了PHP用户注册邮件激活账户的实现代码的使用技巧和注意事项,需要的朋友参考一下 我们在注册一个网站的账户时,通常都会收到一封含点击链接激活的邮件,而它是怎么激活我们的账户的呢,今天向大家介绍一种方法。 预备条件 我们在注册账户时,一般在用户表中会记录下我们的id、用户名、密码、邮箱或手机号,还会有一个账户激活与否的字段。我们假设它为 acti
在 3.1创建用户 中,我们注册了一个用户,并且产生了激活码,这个时候,我们得到激活码,怎么激活用户呢? 其实很简单,看代码 try { // 根据 userid 查询用户 $user = Sentry::findUserById(1); // 使用激活码激活用户 if ($user->attemptActivation('产生的激活码')) {
查看以下,详细了解如何处理与 iPhone 手机配对的 M600 上的电子邮件。 阅读您的 M600 上的电子邮件 如果您在手机上使用电子邮件通知,那么在您收到新邮件时会在您的 M600 看到通知。 阅读电子邮件 轻触通知。 利用您的 M600 回复电子邮件 您可以利用您的手腕表回复邮件。 回复电子邮件 轻触通知查看所有邮件 从屏幕底部向上滑动,查看您可以执行的操作。 轻触 Reply(回复),并