gpt4 book ai didi

ios - 以 http 开头的自定义 URL 方案不起作用

转载 作者:可可西里 更新时间:2023-11-01 03:28:48 24 4
gpt4 key购买 nike

我在应用程序中使用了自定义 URL 方案。我成功地从 safari 重定向到我的应用程序。就像我将 URL 方案设为“appname”一样。请查看http://prntscr.com/2cjx0p .

我需要使用类似 ios url redirect from mail to app 的解决方案,但我不确定如何设置 cookie。

我发现我必须先在我的应用程序中为服务器“http://myappname.com”设置一个 cookie。但是我应该怎么做呢?


背景故事:

我可以像在 safari 中输入“appname://”一样使用它,然后我将被重定向到我的应用程序。

现在,我必须将此分享到邮件。要求是从邮件中打开应用程序。因此,我还将此链接设置为可在电子邮件正文中点击。但是,因为它以“appname://”开头,所以我没有被重定向到我的应用程序。这意味着此链接必须以“http://”开头。

然后,我在 URL 方案中设置了“http”而不是“appname”,然后再次共享该文本。所以它会像“http://”。但是,通过键入它,它不会将其重定向到我的应用程序。

最佳答案

在您链接到代码的问题中打开一个链接:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.myApp.com/appInstalled"]];

这会在您服务器上的指定页面打开 Safari。该页面唯一要做的就是设置一个 cookie,然后重定向回您的应用程序(使用自定义 URL 方案)。这需要由加载的网页完成(因此使用返回的 header 和 HTML)。

这样做的目的是将 cookie 存储在 Safari 中(这是将来需要它的地方 - 它应该有一个很远的 future 到期日期)。我认为您无法通过应用程序(沙盒)将 cookie 存储在 Safari 中。

您会看到切换到 Safari,但它应该几乎立即切换回您的应用。


您应该能够在返回的 HTML 页面中使用 javascript 进行重定向:

<script type="text/javascript">
<!--
window.location = "gameswap://?d"
//-->
</script>

或使用 HTML(在部分中):

<meta http-equiv="refresh" content="0; url=gameswap://?d" />

关于ios - 以 http 开头的自定义 URL 方案不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20700758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com