首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Ember.js中访问/apple-app-site-association的内容?

如何在Ember.js中访问/apple-app-site-association的内容?
EN

Stack Overflow用户
提问于 2020-01-22 10:20:07
回答 1查看 100关注 0票数 0

我在关注https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html

我如何让Ember为这个url https://www.some-url.com/app-app-site-association服务?

注意,app-app-site-association是一个文件。不幸的是,Apple选择不在此文件中添加扩展名。

理想情况下,访问此url应呈现:

代码语言:javascript
复制
{
  "applinks": {
    "apps": [],
      "details": [
        {
        "appID": "9F32916B95.foo.bar.baz",
        "paths": ["*"]
        }
    ]
  }
}
EN

回答 1

Stack Overflow用户

发布于 2020-01-22 16:45:33

这里要理解的重要一点是,如果你想传递一个静态文件,它可能是你的/app-app-site-association,或者只是/something.jpg上的一个图像,这与ember无关。

Ember在浏览器中运行。所以整个ember路由都是在浏览器中进行的。这就是为什么你必须配置你的when服务器,当他找不到文件时,它会为index.html文件提供服务。

因此,当您输入example.com/something时,这将触发一个HTTP GET example.com/something。然后,您的yes服务器应检查文件something是否存在,如果存在,则应返回200 OK和该文件的内容。

如果If找不到文件something,它通常会以404 NOT FOUND响应。但是,当您使用SPA作为成员时,您需要配置您的when服务器,使其永远不会使用404 NOT FOUND响应,而是返回200 OKindex.html的主体。(you can see an example configuration in the ember guides, but this will be different for different webservers)

这将加载您的ember应用程序(您已经在index.html中包含了.js文件),ember将检查当前的url并启动ember路由。这在浏览器中发生。

因此,如果某个东西想要发出一个HTTP请求并获取文件app-app-site-association,它可能不想获取您的index.html,然后运行浏览器让ember做任何事情。它只是想要直接从你的the服务器获取文件。因此您的and服务器必须直接使用200 OK和该文件的内容进行响应。如果该文件刚刚存在,它可能会像我上面提到的那样执行此操作。

现在,ember项目有了一个public文件夹。如果你想在你的ember应用程序旁边有一些文件,这些文件应该只由你的you服务器提供服务,这是一个正确的地方。无论您放在其中的是什么,都会被复制到dist文件夹中。这意味着当您随后部署dist文件夹时,您也将部署该文件。

但是,要小心您的your服务器配置。因为该文件没有结尾,所以它可能会被用作text/plain。如果你想让它充当application/json,你需要相应地配置你的want服务器。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59851747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档