我想调用一个API,从我的后端(节点(铬控制台上说:
访问'XMLHttpRequesthttp://127.0.0.1:4201/api//listar_clientes_filtrado_admin'来自原点'http://localhost:4200'已被CORS策略阻止:飞行前响应中的访问控制允许标头不允许请求标头字段content.type。
问题是表单HttpErrorResponse不允许我使用API。
这是我想使用的方法:(ClientController(
const listar_clientes_filtrado_admin = async function (req, res) {
let registro = await Cliente.find();
res.status(200).send({ data: registro }); }
即使我在我的app.js(后端(中也使用了这个,但它不起作用。
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Headers', 'Authorization, X-API-KEY, Origin, X-Requested-With, Content-Type, Access-Control-Allow-Request-Method');
res.header('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE, OPTIONS');
res.header('Allow', 'GET, PUT, POST, DELETE, OPTIONS');
next();
});
其他部分:
(Cliente.js(
//GET
api.get('/listar_clientes_filtrado_admin',
clienteController.listar_clientes_filtrado_admin
);
(Cliente.service.ts(-前角
listar_clientes_filtrado_admin(): Observable<any> {
let headers = new HttpHeaders().set('Content.Type', 'application/json');
return this._http.get(this.url + '/listar_clientes_filtrado_admin', {headers: headers});}
(component.ts(
ngOnInit(): void {
this._clienteService.listar_clientes_filtrado_admin().subscribe(
response => {
console.log(response);
},
error => {
console.log(error);
}
)
尝试添加中间位置,如下所示:
var cors = require('cors')
var app = express()
app.use(cors())`
它是启用所有cors请求。
当然,你需要在安装之前运行npm i cors