如何清除React Native WebView Cookie?

问题描述 投票:0回答:5

如何清除React Native WebView Cookie?

当我重新打开页面时,如果我登录网站,它会记住我的帐户。但我不想那样。

我可以通过注入 javascript 来做到这一点吗?

javascript webview react-native
5个回答
22
投票

使用此解决:https://github.com/react-native-community/react-native-cookies

CookieManager.clearAll();

16
投票

我使用隐身模式作为转机,它非常适合我。

<WebView
  incognito={true}
  userAgent="Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like Gecko"
  source={{
    uri:
      'your url',
  }}
  style={{ flex: 1 }}
/>

12
投票

在我发帖时,

CookieManager
对Expo的支持很差,更改密码后我在清除cookie时遇到了问题。

2020 年,

对于使用 Expo 的人,这有效:

const RCTNetworking = require('react-native/Libraries/Network/RCTNetworking') RCTNetworking.clearCookies(() => { })
    

3
投票
这是不使用任何第三方库的解决方案。

var RCTNetworking = require(“RCTNetworking”); RCTNetworking.clearCookies(() => {});
    

0
投票

2024 年世博会用户答案

找不到一个库可以做到这一点。

Adeb 的答案非常适合简单的、从新的情况开始,但我需要一些关于 cookie 的自定义行为。

注入一些自定义 Javascript 来操作 cookie。

根据您的设置,对于某些和较新的浏览器使用

Cookie Store API,或更多手动清除 Cookie 的方法。

export default function HomeScreen() { const webView = useRef<WebView>(null) const injectCookies = () => { webView.current?.injectJavaScript(` console.log("manipulate your cookies here, for example using cookiestore api"); `) } return ( <View style={styles.container}> <View style={styles.banner}> <Button onPress={injectCookies} title="button"></Button> </View> <WebView source={{uri: localDev}} /> </View> ); }
    
© www.soinside.com 2019 - 2024. All rights reserved.