Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React Native的Webview组件中的身份验证问题_Webview_React Native - Fatal编程技术网

React Native的Webview组件中的身份验证问题

React Native的Webview组件中的身份验证问题,webview,react-native,Webview,React Native,我正在尝试在react native webview中加载需要凭据的URL。通常,当我们在Safari和Chrome等浏览器中打开此URL时,会弹出一个窗口来输入凭据。不确定如何在React-Native中处理它?我们需要对React-Native应用程序进行LinkedIn身份验证,我们无法找到使用WebView组件的方法 这很有可能,但是,我将强调我们提出的解决方案。这些步骤适用于iOS React本机应用程序,对于Android,步骤会有所不同,但概念是相同的。这也需要一些服务器配置 我们

我正在尝试在react native webview中加载需要凭据的URL。通常,当我们在Safari和Chrome等浏览器中打开此URL时,会弹出一个窗口来输入凭据。不确定如何在React-Native中处理它?

我们需要对React-Native应用程序进行LinkedIn身份验证,我们无法找到使用
WebView
组件的方法

这很有可能,但是,我将强调我们提出的解决方案。这些步骤适用于iOS React本机应用程序,对于Android,步骤会有所不同,但概念是相同的。这也需要一些服务器配置

我们创建了一个URL类型。在XCode中,选择您的项目并单击
Info
选项卡。滚动到底部查看URL类型。填写
标识符
URL方案
。记住您为
URL方案设置的内容。对于本例,我们将使用
myscheme

当应用程序打开时,我们使用
链接
在Safari中打开URL

Linking.openURL('https://foo.bar');
用户可以通过网站登录,一旦登录,您可以将用户重定向回

myscheme://name=Dan
与您在Xcode中输入的
URL方案
匹配的
myscheme
。只要您安装了应用程序并且方案匹配,您的应用程序就会打开

您可以在
://
之后添加任何信息负载

在React应用程序中,您可以注册

componentWillMount() {
  Linking.addEventListener('url', this.handleOpenURL);
}

componentWillUnmount() {
  Linking.removeEventListener('url', this.handleOpenURL);
}

handleOpenURL = (event) => {
  const { url } = event;
  if (url.startsWith('myscheme://')) {
    // do something with your data.
  }
};

这似乎是一个非常好的解决办法,但遗憾的是,我没有服务器端访问权限,因为我正在尝试在我的react本机应用程序上打开一个intranet URL,该链接支持ADFS身份验证。