日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

ajax中res和req,javascript – 来自AJAX调用的res.redirect

發布時間:2024/9/27 javascript 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ajax中res和req,javascript – 来自AJAX调用的res.redirect 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我正在嘗試在ajax put請求之后進行重定向.我打算使用純JS客戶端進行驗證.

客戶:

$(document).ready(function() {

login = () => {

var username = $("[name='username']").val()

var password = $("[name='password']").val()

$.ajax({

type: "put",

url: '/login',

data: {

username: username,

password: password

}

// success: function(response) {

// console.log('Success:')

// console.log(response.user)

// Cookies.set('username', response.user.username)

// Cookies.set('first_name', response.user.first_name)

// Cookies.set('last_name', response.user.last_name)

// Cookies.set('email', response.user.email)

// window.location.href = window.location.origin + '/'

// },

// error: function(error) {

// console.log("Error:")

// console.log(error)

// }

})

}

logout = () => {

console.log("Log out clicked.")

Cookies.remove('username')

Cookies.remove('first_name')

Cookies.remove('last_name')

Cookies.remove('email')

window.location.href = window.location.origin + '/logout'

}

})

服務器:

/* GET home page. */

router.get('/', function(req, res, next) {

res.render('main')

});

router.put('/login', function(req, res) {

// Password is not encrypted here

console.log('req.body')

console.log(req.body)

User.findOne({ username: req.body.username }, function(err, user) {

// Password is encrypted here

if (err) throw err

console.log('user')

console.log(user)

bcrypt.compare(req.body.password, user.password, function(err, result) {

if (result) {

var token = jwt.encode(user, JWT_SECRET)

// return res.status(200).send({ user: user, token: token })

return res.redirect('/')

} else {

return res.status(401).send({error: "Something is wrong."})

}

})

})

})

成功登錄后,我無法獲取main.hbs.我的注釋代碼有效,但我正在嘗試重定向服務器端而不是客戶端,因為我被告知它對安全性更好.

解決方法:

我不認為你想做什么是可能的. AJAX請求僅用于來回傳遞數據.現在發生的事情是你需要編寫客戶端行為的腳本.這意味著AJAX請求將傳遞302和其他數據一起傳遞到JS上的回調.不能從服務器更改客戶端行為.您可以使用AJAX返回的值執行某些操作.如果是500,拋出錯誤信息,200做某事等.

使服務器重定向工作的唯一方法是通過傳統的HTML表單提交.

標簽:jquery,javascript,ajax,express

來源: https://codeday.me/bug/20190611/1217514.html

總結

以上是生活随笔為你收集整理的ajax中res和req,javascript – 来自AJAX调用的res.redirect的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。