我将 Hashicorp 保险库用作机密存储,并通过 Ubuntu 20.04 上的 apt 存储库安装它。
之后,我添加了访问 UI 的根密钥,并且可以使用 UI 添加或删除机密。
每当我尝试使用命令行添加或获取机密时,都会收到以下错误:
jarvis@saki:~$ vault kv get secret/vault
Get "https://127.0.0.1:8200/v1/sys/internal/ui/mounts/secret/vault": http: server gave HTTP response to HTTPS client
Run Code Online (Sandbox Code Playgroud)
我的保险库配置如下所示:
# Full configuration options can be found at https://www.vaultproject.io/docs/configuration
ui = true
#mlock = true
#disable_mlock = true
storage "file" {
path = "/opt/vault/data"
}
#storage "consul" {
# address = "127.0.0.1:8500"
# path = "vault"
#}
# HTTP listener
#listener "tcp" {
# address = "127.0.0.1:8200"
# tls_disable = …
Run Code Online (Sandbox Code Playgroud) 我已经尝试过如何处理 webView URL 上的 intent://? 这个解决方案只是在我的 WebView 中打开一个 Google Play 商店网页,我想要的是点击,另一个应用程序应该打开,其意图在 Chrome 中提供。
我的应用程序有一个运行良好的 WebView。在一个阶段,WebView 请求访问以下内容(外部支付应用程序):
intent://pay/?pa=digitalshowroom1.payu@indus&pn=DOTPE%20PRIVATE%20LIMITED&tr=13261664955&tid=CX0FOrvSrHzDh7gP&am=1.00&cu=INR&tn=OrderId-CX0FOrvSrHzDh7gP
Run Code Online (Sandbox Code Playgroud)
当我使用 WebView 在 Chrome 中使用的相同网站时,它成功打开外部支付应用程序,即 Chrome 能够处理该意图,我的应用程序如何处理相同的意图。
我似乎知道我必须使用
public boolean shouldOverrideUrlLoading(WebView view, String url)
Run Code Online (Sandbox Code Playgroud)
为此,我使用它如下:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && (url.startsWith("whatsapp://") || url.startsWith("tel") || url.startsWith("market"))) {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
}
else {
return false;
}
Run Code Online (Sandbox Code Playgroud)
现在,这段代码正在处理诸如打开 WhatsApp、呼叫应用程序等的意图,因为它们以whatsapp
or开头tel
,因此我可以利用该url.startsWith()
方法。
如何处理请求访问外部应用程序并以 开头的链接intent://
?
提前致谢!