Aquí está mi problema: trato de saber si el usuario ha iniciado sesión con Drupal endpoint user/login_status. Funciona bien si mi solicitud de búsqueda js proviene del mismo dominio. Significa que si el usuario ha iniciado sesión, la respuesta es "1" y "0" si no. Pero no funciona si proviene de localhost:3000. La respuesta es siempre 0 sin ningún error. Sé que ciertamente es un problema cors, pero no puedo encontrar la solución.
Aquí está mi código:
fetch(`${this.url_server}user/login_status?_format=json`, { method: "GET", headers: { "Content-Type": "application/json" } }) .then(response => { return response.text() }) .then(data => { console.log("login status", data);//.current_user return data; }).catch(error => {error.log(error)});Mi archivo services.php:
cors.config: enabled: true # Specify allowed headers, like 'x-allowed-header'. allowedHeaders: ['x-csrf-token', 'authorization', 'content-type', 'accept', 'origin', 'x-requested-with'] # Specify allowed request methods, specify ['*'] to allow all possible ones. allowedMethods: ['POST', 'GET', 'OPTIONS', 'DELETE', 'PUT', 'PATCH'] # Configure requests allowed from specific origins. #allowedOrigins: ['*'] allowedOrigins: ['http://localhost/','http://localhost:3000','http://localhost:3001','http://localhost:3002','*'] # Sets the Access-Control-Expose-Headers header. exposedHeaders: false # Sets the Access-Control-Max-Age header. maxAge: false # Sets the Access-Control-Allow-Credentials header. supportsCredentials: falseY mi archivo conf de apache:
<Directory "/home/bob/dev/test/web"> Allowoverride All DirectoryIndex index.php Options FollowSymLinks Require all granted Header set Access-Control-Allow-Origin "*" </Directory>¿Alguna idea?