mongooseを使用してmongodbのレコードを削除する必要があります。ここで角2:メソッドは、プリフライトレスポンスのAccess-Control-Allow-MethodsでDELETEを許可していません
は私のコンポーネントである
deleteProduct(product){
this._confirmationService.confirm({
message: 'Are you sure you want to delete the item?',
accept:() => {
this._productsAdminService.deleteProduct(product._id)
.subscribe(products => {
products.forEach(function(product){
if(product.cat_id === 1) product.catName = 'Dota Shirts';
if(product.cat_id === 2) product.catName = 'Gym Shirts';
if(product.cat_id === 3) product.catName = 'Car Shirts';
});
this.products = products;
},
err => console.log(err));
}
})
}
基本的にこれはただのHTTPリクエストを実行するために、サービスに製品IDを渡します。
は、ここに私のサービス
deleteProduct(productId){
let headers = new Headers({'Authorization': 'JWT ' + localStorage.getItem('currentUserToken')});
let options = new RequestOptions({ headers: headers});
return this._http.delete('http://localhost:3000/admin/products/delete/' + productId, options)
.map((response: Response) => response.json())
.catch(this._handlerError);
}
私はexpressJSで私のAPIを呼び出すには、deleteメソッドを使用しています。ここで
は私のAPI
productsAdminRouter.route('/delete/:productId')
.delete(function(req,res){
id = req.params.productId;
console.log(id);
Products.findByIdAndRemove(id)
.exec(function(err, done){
if (err) throw err;
Products.find()
.exec(function(err, products){
res.json(products);
});
});
});
しかし、私はいつもこのエラー
誰が助けることはでき
を得たのですか?私は立ち往生している。私は、Java-春のバックエンドで作業するときに、他の日に同じ問題を抱えていた
私のコードにaccess-control-allow-methodヘッダーをどこにどこに置くべきか教えていただけますか?今私は認証ヘッダーを持っており、アクセス制御をどのように置くべきかわかりません。私はすでにcorsを有効にしています –
try res.header( "アクセス制御許可ヘッダー"、 "承認、発信元、X要求済み、コンテンツタイプ、承諾"); res.header( "アクセス制御を許可するメソッド"、 "パッチを適用、POST、取得、削除、オプション"); if( 'オプション' === req.method){ return res.send(200); } – flashjpr