Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

177
Vistas
¿Cómo pasar datos de un archivo Vanilla JS a una vista Django (solicitud POST)? Estoy detectando si la dirección de Metamask coincide o no con la dirección del usuario

Entonces, en mi vista de inicio de sesión, quiero verificar si la dirección devuelta por metamask corresponde a la dirección de la billetera del usuario que intenta iniciar sesión.

Este es el código javascript que estoy usando para hacerlo:

 async function loginWithMetaMask() { const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' }) .catch((e) => { console.error(e.message); return; }) if (!accounts) { return; } window.userWalletAddress = accounts[0]; console.log(accounts[0]); let data = {address : window.userWalletAddress}; const request = new XMLHttpRequest(); request.open('POST', 'accounts/login', true); request.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); request.onload = () => { const data = JSON.parse(request.responseText); console.log(data); } request.send(data); return false; }

como puedes ver :

 let data = {address : window.userWalletAddress}; const request = new XMLHttpRequest(); request.open('POST', 'accounts/login', true); request.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); request.onload = () => { const data = JSON.parse(request.responseText); console.log(data); } request.send(data);

este fragmento de código de la función loginWithMetaMask() es responsable de enviar el objeto JSON cuando se realiza una solicitud POST a la URL de 'cuentas/inicio de sesión'.

Esta es mi vista Django:

 def post(self, request):#, address): username = request.POST['username'] password = request.POST['password'] user = authenticate(request, username=username, password=password) if request.is_ajax(): print('connected') data = {'address': request.POST.get('address', None)} address = data[address] print(address) else: return render(request, self.template, { 'message': "MetaMask not onnected" }) #go ahead and authenticate the user

pero request.is_ajax() devuelve falso y no obtengo datos en mi opinión.

¿Puede alguien mostrarme la forma correcta de hacer esto?

Gracias

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda