cabeçalho de 'Autorização' de origem cruzada com jquery.ajax ()
Estou tentando enviar um domínio de origem cruzada e adicionando um cabeçalho 'Autorização' personalizado. Por favor veja o código abaixo
Erro
XMLHttpRequest não pode carregar {url}. Campo de cabeçalho da solicitação A autorização não é permitida pelos cabeçalhos de controle de acesso e permissã
function loadJson(from, to) {
$.ajax({
//this is a 'cross-origin' domain
url : "http://localhost:2180/api/index.php",
dataType : 'json',
data : { handler : "statistic", from : from, to : to
},
beforeSend : setHeader,
success : function(data) {
alert("success");
},
error : function(jqXHR, textStatus, errorThrown) {
alert("error");
}
});
}
function getToken() {
var cookie = Cookie.getCookie(cookieName);
var auth = jQuery.parseJSON(cookie);
var token = "Token " + auth.id + ":" + auth.key;
}
function setHeader(xhr) {
xhr.setRequestHeader('Authorization', getToken());
}
Eu também tentei:
headers : { 'Authorization' : getToken() },
na solicitação ajax.
Será que a estrutura jquery-ajax está bloqueando a autenticação de origem cruzada? Como posso consertar isso
Atualizar
By the way: existe um método mais seguro para armazenar o auth.key no lado do cliente, em seguida, em um cookie? getToken () será substituído por um método mais complexo, hash do corpo, data, etc.