将get请求重定向到post请求?使用express
是否可以使用expressjs从Get请求重定向到POST请求?我只是从API重定向了一个get请求,需要将一个数据抛出,这就是为什么我需要使用POST请求将其发回将get请求重定向到post请求?使用express,express,redirect,Express,Redirect,是否可以使用expressjs从Get请求重定向到POST请求?我只是从API重定向了一个get请求,需要将一个数据抛出,这就是为什么我需要使用POST请求将其发回 router.get('/webhooks/success',(req, res) => { res.redirect(307, '/webhooks/success') }) router.post('/webhooks/success', async function(req, res){ try{ v
router.get('/webhooks/success',(req, res) => {
res.redirect(307, '/webhooks/success')
})
router.post('/webhooks/success', async function(req, res){
try{
var request = require('request');
var buffer = Buffer.from('pk-7xvHjw43SOGNLpot677GfxoLasdasdaa44TOJkREVMo')
var base = buffer.toString('base64');
let auth = 'Basic ' + base
var options = {
'method': 'POST',
'url': 'url',
'headers': {
'Content-Type': 'application/json',
'Authorization': JSON.stringify(auth)
},
body: JSON.stringify({
......
})
};
// req.setHeader(options)
request(options, async function (error, response) {
if (response === null || response === undefined || error) throw createError(403, error)
console.log('RESPONSEE', response)
if (response.statusCode === 200) return res.redirect('/success');
throw createError(500, error)
});
}catch(e){
error_logs(e, req)
req.flash('error', e.message)
res.redirect('back')
}
});
我只是使用了另一个api post请求
router.get('/webhooks/success',async (req, res) => {
try{
var request = require('request');
var options = {
'method': 'POST',
'url': 'url',
'headers': {
'Content-Type': 'application/json',
}
}
request(options, async function (error, response) {
if (response === null || response === undefined || error) throw createError(403, error)
if (response.statusCode === 200) return res.redirect('/success');
res.redirect('/buy_ticket')
});
}catch(e){
error_logs(e, req)
req.flash('error', e.message)
res.redirect('/buy_ticket')
}
})
你的理由令人困惑。GET请求可以很好地返回数据。