首页 > 解决方案 > 如何在本机反应中访问 webview 中的登录操作响应?

问题描述

我想在 webview 中获得登录后返回的响应。但经过大量研究,我无法得出结论。

  1. 欢迎画面。在这里,我通过单击按钮重定向到 web 视图。
  2. 登录屏幕(Webview)。我需要在此处获取登录后返回的响应。

如何在 webview 中访问请求和响应?或者正确的方法是什么?

标签: react-nativeauthenticationwebview

解决方案


您可以使用注入的脚本将数据发送到 webview,并使用 postMessage 将数据发送回以响应本机应用程序

//This sends data from WebView to React Native
...
<script>
  window.postMessage("Sending data from WebView");
</script>
...


//In order to get data the was sent from WebView use onMessage prop on <WebView>
...
<WebView
   ref="webview"
    injectedJavaScript={`
 document.body.style.backgroundColor = '#f4f4f4';
 true; `}
    onMessage={this.onMessage}
/>
  
onMessage(data) {
  //Prints out data that was passed.
  console.log(data);
}


推荐阅读