Ios 通用链接是否影响我的服务器?
我已经在我的iOS应用程序上设置了通用链接,使用了我后端的别名子域和类似于Ios 通用链接是否影响我的服务器?,ios,node.js,express,ios-universal-links,Ios,Node.js,Express,Ios Universal Links,我已经在我的iOS应用程序上设置了通用链接,使用了我后端的别名子域和类似于sudomain.mydomain.com的方案。我希望没有安装应用的用户被重定向到应用商店中的页面,而不是点击我们服务器上不存在的端点(我们没有webapp,只有移动后端) 我在考虑这样做: app.get('*', (request, response) => { const domain = request.headers.host, subdomain = domain.split('.
sudomain.mydomain.com
的方案。我希望没有安装应用的用户被重定向到应用商店中的页面,而不是点击我们服务器上不存在的端点(我们没有webapp,只有移动后端)
我在考虑这样做:
app.get('*', (request, response) => {
const domain = request.headers.host,
subdomain = domain.split('.');
if ( subdomain[0] === 'subdomain'){
response.redirect('www.linktoappstore.com');
}
...
});
不过,我不希望这会干扰那些安装了应用程序的用户的通用链接。Universal Link
get
请求是否发送到我的服务器,或者iOS是否在此之前拦截它们?这应该可以正常工作。
配置通用链接并安装应用程序后,设备在启动应用程序之前不会触动服务器。这是因为iOS在应用程序初始安装时会缓存苹果应用程序站点关联
文件,如果打开的URL与其中定义的路径匹配,则会启动通用链接。在这种情况下,iOS完全绕过任何web请求,立即启动您的应用程序
当然,这意味着,这可能成为一个主要的痛点。为了解决这个问题,您需要类似(完全披露:我在分支团队中)的内容来填充缺少的数据
另外,如果要代理子域,请确保iOS不会将其视为任何类型的重定向。否则,
apple应用程序站点关联
文件将不会被删除(常见的通用链接实现问题)。谢谢!一切似乎都对我有用。我假设在这种情况下,使用URL缩短器将不起作用(因此需要分支)。正确,除非您以某种方式控制短URL域并可以在其中添加AASA文件!在applinks中使用通配符时,这是如何工作的?它如何知道在查找AASA文件时使用哪个子域?在没有通配符的情况下,我们可以使用它,但似乎无法使用通配符。有了通配符,iOS会在父域(如果是子域,则为父子域)查找AASA文件。是的,按照这个答案的方向,事情正在为我们工作。谢谢