私はAJAXとNodeを初めて使用していて、これをどう扱うべきか分かりませんでした。 dbから行を削除した後に同じ経路にリダイレクトしたいが、GETメソッドを使用してDELETE ajaxを呼び出す。私はフロントエンドスクリプトからページをリダイレクトできると信じていますが、どちらが正しい戦略であるかわかりません。どんな助けもありがとう!Ajax Node/Expressでリクエストとレスポンスを削除する - GETメソッドでどのようにリダイレクトすることができますか?
フロントエンドJS製造AJAX呼び出しscript.js
$('.deleteRepository').on('click', function(event) {
event.stopImmediatePropagation();
var username = $(this).attr('username');
var repoName = $(this).attr('repoName');
var oReq = new XMLHttpRequest();
oReq.open("delete", "/user/"+username+'/'+repoName);
oReq.send();
});
myRoute.js
router.route('/:username/:repository')
.delete(function(req, res) {
console.log('\n\nDelete method called\n\n');
let username = req.params.username;
let repoName = req.params.repository;
deleteRepositoryFromUser(req, res)
.then(function() {
console.log('deleted, now redirect');
//I want to redirect to this page using GET, but logs DELETE
//I also want to redirect to /user/TonyStark/Favorites
res.redirect(200, '/user/'+username+'/Favorites');
})
コンソール
GET /user/TonyStark/delMe 200 114.702 ms - 4075
...
Delete method called
deleteRepositoryFromUser()
repoName: delMe
username: TonyStark
deleted, now redirect
DELETE /user/TonyStark/delMe 200 4.568 ms - 44 //how can I make GET?
//why is it not going to /user/TonyStark/Favorites?
おかげSvabael:myRoute.jsで
。しかし、私が試してみると、ループ内でリクエストを再帰的に送信し続けます。 –