React Native的Webview组件中的身份验证问题
我正在尝试在react native webview中加载需要凭据的URL。通常,当我们在Safari和Chrome等浏览器中打开此URL时,会弹出一个窗口来输入凭据。不确定如何在React-Native中处理它?我们需要对React-Native应用程序进行LinkedIn身份验证,我们无法找到使用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,步骤会有所不同,但概念是相同的。这也需要一些服务器配置 我们
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身份验证。