Solicitar token con JQuery desde la API web
Estoy haciendo una solicitud ajax en Javascript para obtener un JWT de mi WebAPI AuthenticationProvider. Esta es mi función js:
function authenticateUser(credentials) {
var body = {
grant_type: 'password',
client_id: 'myClientId',
client_secret: 'myClientSecret',
username: credentials.name,
password: credentials.password
};
$.ajax({
url: 'http://localhost:9000/token',
type: 'POST',
dataType: 'json',
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
/* data: JSON.stringify(body), /* wrong */
data: body, /* right */
complete: function(result) {
//called when complete
alert(result);
},
success: function(result) {
//called when successful
alert(result);
},
error: function(result) {
//called when there is an error
alert(result);
},
});
session.isAuthenticated(true);
return true;
}
Aunque el contenido se envía de la manera correcta a mis ojos, elOAuthValidateClientAuthenticationContext solo tiene valores nulos.
Mis datos de formulario copiados de la consola:
{"grant_type": "contraseña", "client_id": "myClientId", "client_secret": "myClientSecret", "nombre de usuario": "demo", "contraseña": "123"}