Intento usar la llamada ajax en el archivo js para recuperar datos de couchdb.
Pero recibí el error 401: Error al cargar el recurso: el servidor respondió con un estado de 401 (No autorizado)
Aquí está mi código js:
var locate_data = $.ajax({ url: 'http://admin:mypassword@localhost:5984/database_name', type:'GET', dataType: "json", success: function(data){ console.log("successfully loaded."), alert(data); }, error: function(xhr) { console.log("error"), alert(xhr.statusText) } })Puedo usar 'curl GET' para obtener los datos de couchdb usando la terminal.
¿Cuál es el problema? y como puedo solucionarlo?
Puede usar la autenticación de acceso básica donde las solicitudes contienen un campo de encabezado en forma de Authorization: Basic <credentials> , donde las credenciales son la codificación Base64 del nombre de usuario y la contraseña, unidos por dos puntos ' : '.
Esta respuesta explica cómo hacer lo mismo en el contexto de Angular . No estoy usando Ajax , pero supongo que debería verse así.
$.ajax({ url: 'http://localhost:5984/database_name', type:'GET', headers: { 'Accept': 'application/json', 'Content-type', 'application/json', 'Authorization': 'Basic ' + btoa("<username>:<password>") }, xhrFields: { withCredentials: true }, ...