Estoy tratando de usar Discord API Oauth2 para agregar automáticamente un usuario a mi gremio. Todo lo que necesito es obtener un token de acceso para esta acción como datos para enviar (datos), identificación de discordia del usuario y token de mi aplicación bot. Todo esto ya lo tengo
Entonces, cuando estoy comenzando mi scirpt con mi sitio tilda.cc o con mi servidor dedicado usando django, recibo este error cada vez
Access to XMLHttpRequest at 'https://discord.com/api/v8/guilds/myguild/members/my_acc' from origin 'http://dedic_ip:8000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.o en tilda
Access to XMLHttpRequest at 'https://discord.com/api/v8/guilds/myguild/members/my_acc' from origin 'http://myproject.tilda.ws' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.Aquí está mi código
<script> const makeRequest = (method, url, data) => { const xhr = new XMLHttpRequest(); xhr.withCredentials = true; return new Promise(resolve => { xhr.open(method, url, true); xhr.setRequestHeader('Content-Type', 'application/json'); xhr.setRequestHeader('Authorization', 'Bot my_bot_token'); xhr.onload = () => resolve({ status: xhr.status, response: xhr.response }); xhr.onerror = () => resolve({ status: xhr.status, response: xhr.response }); if (method == 'GET') xhr.send(); if (method != 'GET') xhr.send(data); }) } const test = async() => { console.log("Starting request ..."); var data = JSON.stringify({'access_token': 'my_token'}) console.log("data:", data); let request4 = await makeRequest("PUT", 'https://discord.com/api/v8/guilds/myguild_id/members/my_acc_id', data) console.log("status:", request4.status); console.log("response:", request4.response); } test() </script>Soy nuevo en la web, así que tal vez sea información inútil, pero en la consola de red después de la verificación previa, necesito encabezados. Pero la solicitud PUT no tenía la opción de solicitud de solicitud de venta
También es importante mencionar que hice con éxito esta solicitud PUT usando solicitudes de python, mi cuenta se agregó al gremio y no ocurrieron errores con este código:
url = f"{API_ENDPOINT}/guilds/{guild}/members/{user['id']}" data = { "access_token": access_token, } headers = { "Authorization": f"Bot {botToken}", 'Content-Type': 'application/json' } response = requests.put(url=url, headers=headers, json=data)