0
我在電子桌面應用程序中使用oauth(堆棧溢出),並且存在加載oauth url的webview。我在我的應用程序中有一個註銷按鈕,它將從Stack Overflow網站以及應用程序中註銷用戶。我怎樣才能做到這一點 ?刪除Electron桌面應用程序中的所有Cookie
如何從電子應用程序的webview中刪除所有會話cookie?
我在電子桌面應用程序中使用oauth(堆棧溢出),並且存在加載oauth url的webview。我在我的應用程序中有一個註銷按鈕,它將從Stack Overflow網站以及應用程序中註銷用戶。我怎樣才能做到這一點 ?刪除Electron桌面應用程序中的所有Cookie
如何從電子應用程序的webview中刪除所有會話cookie?
可以使用電子的cookies.remove()
功能(https://electron.atom.io/docs/api/cookies/#cookiesremoveurl-name-callback)
訣竅是cookie.domain
轉化爲url
刪除的cookie。
import { session } from 'electron';
export default function deleteAllCookies() {
session.defaultSession.cookies.get({}, (error, cookies) => {
cookies.forEach((cookie) => {
let url = '';
// get prefix, like https://www.
url += cookie.secure ? 'https://' : 'http://';
url += cookie.domain.charAt(0) === '.' ? 'www' : '';
// append domain and path
url += cookie.domain;
url += cookie.path;
session.defaultSession.cookies.remove(url, cookie.name, (error) => {
if (error) console.log(`error removing cookie ${cookie.name}`, error);
});
});
});
}