Drupal 8在内核中内置了RESTful Web服务,从8.2开始,我们不需要cors模块。
现在要使用服务,我们只需启用并配置此处指定的default.service.yml文件
但是,我无法配置此设置以允许通过另一个域访问Web服务。
我当前针对cors的service.yml设置是:
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']
# Configure requests allowed from specific origins.
allowedOrigins: ['*']
# Sets the Access-Control-Expose-Headers header.
exposedHeaders: false
# Sets the Access-Control-Max-Age header.
maxAge: 1000
# Sets the Access-Control-Allow-Credentials header.
supportsCredentials: false
我用Google搜索找到了关于此的更多详细配置,但找不到一个。
我正在为跨两个不同领域的测试开发而创建。
将pantheon dev环境用于Web服务,并将localhost自定义.dev域用于使用这些服务。
使用chrome CORS扩展名的服务访问正常运行。