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

91
Vistas
compruebe si la URL contiene una cadena y guarde el valor en la cookie

Quiero implementar un sistema de referidos. Para eso, necesito verificar la URL de la página, si contiene algo como esto: https://myurl.com/referralID=123

Si la URL contiene una referencia, entonces necesito guardar el valor de ID ( 123 en este ejemplo ) en una cookie, que usaré más adelante ( verificaré si esta cookie existe ).

No he trabajado con cookies antes, ni he experimentado con React.

 import React, { useEffect, Fragment } from "react" import { Helmet } from "react-helmet" import { useRuntime } from "vtex.render-runtime" import "./style.global.css" checkCookie() { let refId = window.location.href.indexOf('refferalID=123') if ( refId ) { // document.cookie = `refferalID=${value}` document.cookie = '123' } else { console.log("no refferal ID :(") } } const Head = ({}) => { return ( <Fragment> <Helmet> {checkCookie() } </Helmet> </Fragment> ) } Head.propTypes = {} export default Head

¿Cómo podría verificar la URL no solo para referalID = 123, sino también para cualquier ID y guardar este valor en una cookie que podría enviarse después?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Para guardar y recuperar cookies por nombre, sin usar una biblioteca adicional, puede usar las siguientes funciones:

 export const setCookie = (cname, cvalue) => { var d = new Date(); d.setTime(d.getTime() + 24 * 60 * 60 * 1000); var expires = 'expires=' + d.toUTCString(); document.cookie = cname + '=' + cvalue + ';' + expires + ';path=/'; }; export const getCookie = cname => { var name = cname + '='; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) === ' ') { c = c.substring(1); } if (c.indexOf(name) === 0) { return c.substring(name.length, c.length); } } return ''; };

Para extraer el parámetro de consulta de la solicitud, puede usar URLSearchParams de esta manera:

 const queryParams = new URLSearchParams(window.location.search) const id= queryParams.get("refferalID") if(id) { //save id in cookie setCookie("refferalID",id); }

Más tarde, si desea obtener una cookie, puede usar la función getCookie, así:

 const cookie = getCookie("refferalID");
about 4 years ago · Juan Pablo Isaza Denunciar

0

Por ejemplo, tal vez puedas seguir un camino como este

 import Cookies from 'universal-cookie'; const queryParams = new URLSearchParams(window.location.search) const refId = queryParams.get("referralID") const cookies = new Cookies(); let idCookie = cookies.get('referralID') if (!idCookie) { cookies.set('referralID', refId, { path: '/' }); }
about 4 years ago · Juan Pablo Isaza Denunciar
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