¿Qué más debo probar?
Actualmente estoy enviando una solicitud a la API de DeepL en axios, pero recibo una respuesta 403 debido a un problema de CORS.
E intenté configurar la opción usando una cadena de consulta como se muestra aquí, pero no funcionó. https://github.com/funkyremi/deepl/blob/master/index.ts Además, usar la biblioteca en la URL anterior devuelve 403.
Además, no hay una configuración de origen en la configuración de la cuenta de DeepL.
Intenté usar 'Content-Type': 'application/x-www-form-urlencoded' para encabezados axios: {}, y también intenté configurar opciones para params: { } y no usar cadena de consulta, pero no funcionó.
import axios from 'axios' import querystring from 'querystring'; export const translateDeepL = async() => { const options = { "auth_key": process.env.DEEPL_AUTH_KEY, "text": 'everyday is birthday.', "target_lang": 'JA', }; const url = "https://api-free.deepl.com/v2/translate"; const data = await axios.post(url, querystring.stringify(options)).then(r => r); console.log(data); } VM3451:1 POST https://api-free.deepl.com/v2/translate 403la solicitud de uso de https con ngrok tampoco funcionó.
También probé el método GET para "https://api-free.deepl.com/v2/usage", pero obtuve el mismo resultado.
Definitivamente es api-free.deepl.com ya que estoy usando el plan gratuito.
Por cierto, el código anterior se ejecuta como un componente en React.
Es posible que lo bloqueen por enviar una solicitud desde http (su host local) a https, intente usar la configuración del proxy axios, como
const response = await axios .get("https://api-free.deepl.com/v2/translate", { params: { auth_key: x, text: y, target_lang: z }, proxy: { host: "localhost", port: 8080 } });respuesta de retorno; };