Básicamente, solo estoy tratando de dar acceso a una página determinada si un usuario tiene un elemento determinado. Después de autenticar eso, la nueva página solo puede mostrar estilos básicos de HTML y CSS. El JavaScript no parece cargarse en absoluto... Este es mi index.html
const revealMsg = async () => { var signature = await web3.eth.personal.sign("Message to sign", account) console.log(signature) var res = await fetch('/exclusive?signature=' + signature) //console.log(res) var body = await res.text() //console.log(body); if (body != 'FALSE') { //console.log(body) document.querySelector('html').innerHTML = body; } else { //alert you do not have item alert("You do not have the item!"); } }Este es mi servidor.js
app.get('/exclusive', async (req, res) => { isMember = false var address = await web3.eth.accounts.recover("Message to sign", req.query.signature); console.log(address) var balanceOne = Number(await contractOne.methods.balanceOf(address).call()) var balanceTwo = Number(await contractTwo.methods.balanceOf(address).call()) console.log("Balance 1: ", balanceOne) console.log("Balance 2: ", balanceTwo) if(balanceOne > 0 || balanceTwo > 0){ isMember = true; res.sendFile(path.join(__dirname, '/exclusive.html')) }else{ res.send("FALSE") }})
Y aquí está la página exclusiva en la que estoy tratando de probar cosas simples de JS
<!DOCTYPE html> <html> <head> <title>Exclusive Page</title> <script src="https://cdn.jsdelivr.net/npm/web3@latest/dist/web3.min.js"></script> <style> body { background-color: red; } </style> <h1>Hello World</h1> <button onclick="clear()">Lost Tapes</button> <button id="clear2">Clear2</button> <script> const clear = () => { console.log('clear') } function clear2() { console.log('clear2'); } document.getElementById("clear2").onclick = clear2 </script> </body> </html>