La llamada jQuery AJAX produce un estado de error 403
Estoy haciendo una consulta a un servicio web usando jQuery AJAX. Mi consulta se ve así:
var serviceEndpoint = 'http://example.com/object/details?version=1.1';
$.ajax({
type: 'GET',
url: serviceEndpoint,
dataType: 'jsonp',
contentType: 'jsonp',
headers: { 'api-key':'myKey' },
success: onSuccess,
error: onFailure
});
Cuando ejecuto esto, aparece un error de estado de 403. No entiendo por qué mi llamada resulta en tener el código de estado 403. Tengo el control de la seguridad de mi servicio y está marcado como abierto. Sé que la clave es válida, porque la estoy usando en otra llamada, que funciona. Aquí está la llamada que funciona:
var endpoint = 'http://example.com/object/data/item?version=1.1';
$.ajax({
type: 'POST',
url: endpoint,
cache: 'false',
contentType:'application/json',
headers: {
'api-key':'myKey',
'Content-Type':'application/json'
},
data: JSON.stringify({
id: 5,
count:true
}),
success: onDataSuccess,
error: onDataFailure
});
Sé que estos son dos puntos finales diferentes. Pero estoy 100% convencido de que esto no es un error de autenticación o permiso del lado del servidor. Una vez más, todo está abierto en el lado del servidor. Lo que implica que estoy cometiendo algún error en mi solicitud del lado del cliente.
Siento que debo comunicar que esta solicitud se realiza durante el desarrollo. Entonces, estoy ejecutando esto desdehttp: // localhost: 3000. Por esa razón, inmediatamente asumí que era un problema de CORS. Pero todo parece correcto. El hecho de que mi solicitud POST funcione, pero mi GET no me tiene absolutamente frustrado. ¿Me estoy perdiendo de algo? ¿Qué podría ser?