0
我試圖使用一個離子原生應用程序的快速會話,據我所知,它不支持餅乾。使用快速會話與離子應用程序(沒有餅乾)
我發現了一個潛在的解決方法來發送頭部請求中的認證令牌(sessionID),但無法弄清楚如何獲得快速會話來檢查頭部而不是通常的cookie(connect.sid)。
有沒有人有此建議,或有關如何解決這個問題的想法?
我試圖使用一個離子原生應用程序的快速會話,據我所知,它不支持餅乾。使用快速會話與離子應用程序(沒有餅乾)
我發現了一個潛在的解決方法來發送頭部請求中的認證令牌(sessionID),但無法弄清楚如何獲得快速會話來檢查頭部而不是通常的cookie(connect.sid)。
有沒有人有此建議,或有關如何解決這個問題的想法?
你可以有一個離子餅乾基本驗證,只是驗證您是否包括withCredentials:真在你的Ajax調用,並明示服務器啓用CORS。 more details
現在爲一個離子應用程序JWT是一個非常好的選擇。
在那裏你可以應用你的標題的想法。
中間件例如智威湯遜(別忘了驗證JWT):
function ensureAuthenticated(req, res, next) {
if (!req.headers.authorization) {
return res.status(401).send({ message: 'Please make sure your request has an Authorization header' });
}
var token = req.headers.authorization.split(' ')[1];
var payload = null;
try {
payload = $jwtSimple.decode(token, _pem, 'RS256');
}
catch (err) {
return res.status(401).send({ message: err.message });
}
if (payload.exp <= $moment().unix()) {
return res.status(401).send({ message: 'Token has expired' });
}
req.user = payload.sub;
next();
}
希望這有助於。
嗯,從我可以告訴本機應用程序沒有設置cookie時,它收到一個set-cookie頭。 –