我想在React Native上使用WebView加载https网址。 但是,它不会加载。 我不想在设备的Trust Source上手动添加CA.
任何人都知道解决方案吗? 我很好,即使它需要一些原生实现。
答案 0 :(得分:2)
我对此有一种解决方法(这很糟糕,很hacky,但是可以用)
转到node_modules / react-native-webview / android / src / main / java / com / reactnativecommunity / webview / RNCWebViewManager.java
将这些添加到顶部的导入中:
import android.net.http.SslError;
import android.webkit.SslErrorHandler;
然后在807行附近添加此代码(在onRecievedHttpError下面):
@Override
public void onReceivedSslError(WebView webView, SslErrorHandler handler, SslError error) {
handler.proceed();
}
Bam!现在,您将不再检查ssl错误。不过要当心,这很危险
答案 1 :(得分:0)
实际上确实如此。问题可能是,你需要从样式定义高度。你只需要调用url,而不需要部署任何CA的东西。 WebView不会自动更改高度。
<WebView
source={{ uri: https//www.sample.com }}
style={{ width: 300, height: 300 }}
/>