Si bien esta es una idea excepcionalmente mala, sugeriría pensar un poco fuera de la caja. Hay varias formas posibles de ver desde dónde comenzar:
- Servirlo desde su propio servidor con la URL específica vendida al cliente:
Puede proporcionar un enlace similar a CDN creado para el cliente específico. Eso significa algo como esto:
[math] https://cdn.example.com/:client-name/my-script.js [/ math] Una vez que se solicita este archivo, tiene todo el poder de su servidor web a mano, lo que significa que puede reenviar el solicitud a un script PHP que aumenta un contador en una base de datos antes de devolver el contenido JS real. De esa manera, puede aplicar una regla de descarga máxima para sus clientes que obviamente no funcionará si está incrustada en otras páginas, por lo que el cliente tiene un interés directo en guardar el script para sí mismo.
Sin embargo, esto no impedirá que los clientes del cliente accedan al script.
Entonces, como medida adicional, puede agregar el dominio del cliente a la lista CORS de su servidor web, lo que significa que el script solo puede usar solicitudes AJAX si el dominio de conexión está permitido para CORS. - Sirva un script de cargador y el código real de forma asíncrona:
Junto con la sugerencia n. ° 1, esto será más efectivo, ya que cualquier solicitud de AJAX a su servidor de origen se puede analizar, almacenar y modificar. Básicamente, debe crear un script que no haga más que solicitar el contenido real a través de AJAX tan pronto como se cargue. Adjunte un secreto de cliente a la URL de solicitud y podrá verificar rápidamente el origen. - Sirva una compilación aleatoria de su script en cada solicitud:
JavaScript puede hacer lo mismo de muchas maneras. Nada le impide servir una versión única y aleatoria por cliente que está vinculada al nombre de host (por ejemplo, al usarlo así: [math] window.location.host.split (”). ForEach (letter => asignarVariable ( letra))) [/ matemáticas]
También se puede aleatorizar en cada solicitud para que sea más difícil para los posibles ladrones de código, aunque, por supuesto, no los detendrá. - Use balizas en todo el guión:
Entonces, aunque seguramente habrá algunos usuarios competentes que analizarán cuidadosamente su código antes de usarlo, la mayoría no lo hará. La mayoría de los propietarios de sitios web no tienen idea de los usuarios de WordPress que no quieren pagar a los desarrolladores web, por lo que copian y pegan todo lo que pueden encontrar. Su objetivo debe ser capturar la URL en la que se ejecuta su script con la mayor frecuencia posible y enviarla a su servidor de licencias. Incluso si logran eliminar una de esas balizas, es muy probable que se pierdan otra. Su servidor de licencias se puede configurar para verificar la URL en una base de datos de URL permitidas e informar todas las demás solicitudes (reguladas) por correo electrónico o similar.
Como advertencia: nada de esto impide que alguien realmente robe y modifique su código. No puede exigir licencias con lenguajes de script, punto final.
En su lugar, debe centrarse en proporcionar un servicio único a sus clientes que no requiera la protección de JavaScript.
- Cuando agrego una columna a una tabla existente, ¿se convierte automáticamente en una clave principal?
- ¿Cómo se construye una API?
- ¿Dónde exactamente se puede usar la cola de mensajes en una aplicación web?
- Aprendí C y ahora quiero crear un sitio web como la forma más simple de Twitter usando Python. ¿Qué libros de Python me recomendarías?
- Quiero crear una aplicación web similar a Pinterest, ¿hay alguna forma de obtener y mostrar imágenes sin almacenarlas en mi propio servidor?