Eu tenho a seguinte função de retorno de chamada Jquery e tenho uma dúvida sobre isso (não conheço muito bem o Jquery):
$("form.readXmlForm").submit(function() {
// Riferimento all'elemento form che ha scatenato il submit
var form = $(this);
// Variabile che contiene il riferimento al bottone clickato
var button = form.children(":first");
$.ajax({ // Viene eseguita la chiamata AJAX
type: "POST", // Tipo di richiesta: POST
// URL verso quale viene inviata la richiesta
url: form.attr("action"),
// Dati XML inviati:
data: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><javaBean><foo>bar</foo><fruit>apple</fruit></javaBean>",
// Tipo di media type accettabile dalla response:
contentType: "application/xml",
dataType: "text",
success: function(text) {
MvcUtil.showSuccessResponse(text, button);
},
error: function(xhr) {
MvcUtil.showErrorResponse(xhr.responseText, button);
}
});
Como você pode ver esta função, basta executar uma solicitação AJAX para o back-end, definindo o parâmetro para essa solicitação.
Eu configurei que estou enviando a solicitação para uma URL, que a solicitação é uma solicitação POST e que os dados que estou enviando são a seguinte string:
"barapple"
Tenho algumas dificuldades para entender quais são as diferenças entre contentType e dataType
Eu acho que contentType especifica o tipo de dados que são aceitáveis recebidos na resposta HTTP, está certo?
E dataType? O quê dizer? O tipo de dados que estou enviando na solicitação HTTP?
Nesse caso, é "texto" porque estou enviando uma sequência de texto que representa o código XML?
fonte
Respostas:
A partir da documentação :
e:
Eles são essencialmente o oposto do que você pensou que eram.
fonte
contentType
afeta os cabeçalhos,dataType
nãoEm inglês:
ContentType
: Ao enviar dados para o servidor, use este tipo de conteúdo. O padrão é oapplication/x-www-form-urlencoded; charset=UTF-8
que é bom para a maioria dos casos.Accepts
: O tipo de conteúdo enviado no cabeçalho da solicitação que informa ao servidor que tipo de resposta ele aceitará em troca. DependeDataType
.DataType
: O tipo de dados que você espera do servidor. Se nenhum for especificado, o jQuery tentará deduzi-lo com base no tipo MIME da resposta. Pode sertext, xml, html, script, json, jsonp
.fonte