我试图使用在nodejs中写的api rest在角度4中制作一个crud。
我正在学习本教程:https://youtu.be/3zpdnujI_B0?t=2239
但是当这个家伙开始让PUT遭到攻击时,对我来说并不起作用......
我正在搜索解决方案大约2天
我的项目在这里:https://stackblitz.com/github/Mauricio-vieira/newRepository
我在NodeJs中的API REST worte在这里:https://github.com/Mauricio-vieira/apinode
(它以:" node server.js"开头), (mysql文件在制作db / tables的指令中)
如果你能帮助我,我很高兴:)
答案 0 :(得分:2)
我想问题就出在这里,你不需要为put传递id,而你的API不会将其作为参数
let url = `${this.produtosUrl}/:10`;
将此更改为
let url = `${this.produtosUrl}`;
和
updateProduto (produto: Produto): Observable<any> {
return this.http.put(this.produtosUrl, produto, httpOptions).pipe(
tap(_ => this.log(`updated produto id=${produto.id}`)),
catchError(this.handleError<any>('updateProduto'))
);
}
也在您的节点服务器上,
尝试在Node.js服务器中使用CORS模块:
var cors = require('cors')
app.use(cors());