Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Porque http.send() não recebe um parâmetro pra onde vai ser enviado?

pensei que o .send() teria que receber um endereço ou local pra onde serão enviado os dados, funciona automaticamente? pra onde vai? estou com esta curiosidade...

1 resposta
solução!

Olá Petrus, tudo bem?

Desculpe a demora em retornar.

O método send() da classeXMLHttpRequest não recebe um parâmetro para especificar o destino da requisição porque o destino já foi definido anteriormente, quando a instância do objeto foi criada e configurada.

Antes de chamar o método send(), é necessário configurar a instância do objeto com as informações necessárias para a requisição, como o método HTTP, o URL do recurso, os cabeçalhos da requisição, os parâmetros da requisição (no caso de um POST) etc.

Por exemplo:

const http = new XMLHttpRequest();
http.open("GET", "http://exemplo.com/api/usuarios");
http.setRequestHeader("Authorization", "Bearer <token>");

http.onreadystatechange = function() {
    if (http.readyState == XMLHttpRequest.DONE) {
        if (http.status == 200) {
            console.log(http.responseText);
        } else {
            console.error("Erro na requisição");
        }
    }
};

http.send();

Nesse código, a instância do objeto XMLHttpRequest é criada e configurada com o método open(), que define o método HTTP e o URL do recurso, e o método setRequestHeader(), que define o cabeçalho Authorization da requisição.

O método onreadystatechange é utilizado para tratar o estado da requisição e o método send() é chamado para enviar a requisição para o destino definido anteriormente, no caso, http://exemplo.com/api/usuarios.

Em resumo, o método send() não recebe um parâmetro para especificar o destino da requisição porque essa informação já foi definida anteriormente, durante a configuração da instância do objeto XMLHttpRequest.

Espero ter ajudado a esclarecer sua dúvida. Se tiver mais alguma pergunta, é só perguntar!

Um abraço.