Валидация рекапчи в Django

Я хочу отправить пользователя, который был обнаружен как робот, на страницу, и если ответ валидации был в порядке, я бы отправил его на другой url, но я не знаю, как проверить recaptcha, я прочитал документы, но это не было достаточно ясно. Поэтому любая помощь будет высоко оценена.

views.py

@csrf_exempt
def ref_link(request, seller_id):
    seller = Seller(request)
    result = seller.ref_link(seller_id, request.GET.get('url', 0))
    response = JsonResponse({'result':result} ,safe=False ,  status=200)

    # response = redirect(result)
    # response['Access-Control-Allow-Origin'] = '*'
    # return response
    
    
    
    
    #************* VALIDATION PART *****************
    #recaptcha_response = request.GET.get('g-recaptcha-response')
    #url = 'https://www.google.com/recaptcha/api/siteverify'
    #values = {
    #    'secret': "",
    #    'response': recaptcha_response
    #}
    #data = urllib.parse.urlencode(values).encode()
    #req =  urllib.request.Request(url, data=data)
    #captcha_response = urllib.request.urlopen(req)
    #captcha_result = json.loads(captcha_response.read().decode())
    #if captcha_result['success']:
    #    response = redirect(result[1])
    #    response['Access-Control-Allow-Origin'] = '*'
    #    return response
    #else:
    #    print('None')
    #
    #if len(result) > 1:
    #    if result[0] == False:
    #        response = render(request, 'captcha.html')
    #        response['Access-Control-Allow-Origin'] = '*'
    #        return response
    response = redirect(result)
    response['Access-Control-Allow-Origin'] = '*'
    return response
   

captcha.html

<!DOCTYPE html>

<html>

<head>
    <title>
        im not a robot
    </title>
    <meta name="viewport" content="initial-scale=1.0, width=device-width" />
    <meta charSet="utf-8" />
    <meta httpEquiv="content-language" content="fa" />
    <meta name="language" content="fa" />
    <meta httpEquiv="Content-Type" content="text/html;charset=UTF-8" />
</head>

<body>
    <div >
       
      
         <form method="post">
             {% csrf_token %}
             {{ form.as_p }}
             <script src="https://www.google.com/recaptcha/api.js?render=reCAPTCHA_site_key"></script>
             <div id='sub' class="g-recaptcha" data-sitekey=""  ></div>
        </form>
    </div> 
</body>

</html>
Вернуться на верх