XMLHttpRequest.send()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
O método send()
, do XMLHttpRequest
, envia uma requisição para o servidor.Se a solicitação for assíncrona (que é o padrão), esse método retornará assim que a solicitação for enviada e o resultado for entregue usando eventos. Se a solicitação for síncrona, esse método não retornará até que a resposta chegue.
send()
aceita um parâmetro opcional que permite especificar o corpo da solicitação; isso é usado principalmente para solicitações como PUT
. Se o método de solicitação for GET
ou HEAD
, o parâmetro body
será ignorado e o corpo da solicitação será definido como null
.
Se nenhum cabeçalho Accept
tiver sido definido usando setRequestHeader()
, um cabeçalho Accept
com o tipo "*/*"
(qualquer tipo) é enviado.
Sintaxe
XMLHttpRequest.send(body)
Parâmetros
body
Optional-
Um corpo de dados a ser enviado na solicitação XHR. Isso pode ser:
- Um
Document
, caso em que é serializado antes de ser enviado. - Um
BodyInit
, que conforme a espeficicação Fetch, pode ser um objetoBlob
,BufferSource
,FormData
,URLSearchParams
,ReadableStream
ouUSVString
.
Se nenhum valor for espeficicado para o corpo, o valor padrão de
null
é usado. - Um
A melhor maneira de enviar conteúdo binário (por exemplo, em uploads de arquivos) é usando um ArrayBufferView
ou Blob
em conjunto com o método send()
.
Valor retornado
undefined.
Exceções
Exceção | Descrição |
---|---|
InvalidStateError |
send() já foi invocado para a requisição, e/ou a requisição está completa. |
NetworkError |
O tipo de recurso a ser buscada é um Blob e o método não é GET . |
Exemplo: GET
var xhr = new XMLHttpRequest(); xhr.open('GET', '/server', true); xhr.onload = function () { // Requisição finalizada. Faça o processamento aqui. }; xhr.send(null); // xhr.send('string'); // xhr.send(new Blob()); // xhr.send(new Int8Array()); // xhr.send(document);
Exemplo: POST
var xhr = new XMLHttpRequest(); xhr.open("POST", '/server', true); // Envia a informação do cabeçalho junto com a requisição. xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.onreadystatechange = function() { // Chama a função quando o estado mudar. if (this.readyState === XMLHttpRequest.DONE && this.status === 200) { // Requisição finalizada. Faça o processamento aqui. } } xhr.send("foo=bar&lorem=ipsum"); // xhr.send(new Int8Array()); // xhr.send(document);
Especificações
Specification |
---|
XMLHttpRequest Standard # the-send()-method |
Compatibilidade com navegadores
BCD tables only load in the browser