Javascript 为什么在使用facebook web主机作为画布页面时没有加载我的资产?

Javascript 为什么在使用facebook web主机作为画布页面时没有加载我的资产?,javascript,html,facebook,canvas,Javascript,Html,Facebook,Canvas,我正在使用facebook网站托管我的canvas游戏资产,当他们试图加载时,我不断收到404个错误 我的index.html文件加载正确。我的所有资产都是相对于位于根目录中的index.html文件加载的 我上传的zip文件的结构如下: 以下是当我尝试在facebook中加载画布页面时在控制台中收到的错误;所有404: 这是index.html文件 <!DOCTYPE html> <html> <head> <base href="/" /

我正在使用facebook网站托管我的canvas游戏资产,当他们试图加载时,我不断收到404个错误

我的index.html文件加载正确。我的所有资产都是相对于位于根目录中的index.html文件加载的

我上传的zip文件的结构如下:

以下是当我尝试在facebook中加载画布页面时在控制台中收到的错误;所有404:

这是index.html文件

<!DOCTYPE html>
<html>
<head>
    <base href="/" />
    <meta charset="utf-8" />
    <title>Title Here</title>
    <link rel="stylesheet" type="text/css" href="/styles/main.css">
    <link rel="stylesheet" href="lib/flexboxgrid.min.css">
</head>
<body>    
    <div id="canvasContainer"></div>
    <script type="text/javascript" src="https://connect.facebook.net/en_US/sdk.js"></script>    
    <script src="lib/pixi.min.js"></script>        
    <script src="lib/jquery.min.js"></script>
    <script src="bundle.js"></script>
</body>
</html>

标题在这里
看起来这些资源根本没有被上传

在查看dev tools networking选项卡后,我还注意到我的index.html正在从
https://apps-.apps.fbsbx.com/bundle///index.html?signed_request=.....
位置


但是,我的其他资源除了地址位置之外没有
'bundle//'
。我试图直接在浏览器中加载资源,但收到403拒绝错误。我甚至试图附加签名的请求令牌,但也没有运气;相同的403错误。

大多数问题来自

网络托管

生成的index.html文件位于 zip文件的根,因为这是我们可以启动 内容所有其他URL都需要是相对路径。


更正相对URL

<link href="styles.css" rel="stylesheet"/>  
or
<link href="./styles.css" rel="stylesheet"/>
结果url将采用以下格式:

https://apps-<app id>.apps.fbsbx.com/bundle/<another id>/<another id>/styles.css
https://apps-.apps.fbsbx.com/bundle///styles.css

不正确绝对URL

<link href="/styles.css" rel="stylesheet"/>

https://apps-<app id>.apps.fbsbx.com/styles.css

https://apps-.apps.fbsbx.com/styles.css

当您使用
时,HTML元素指定用于文档中包含的所有相对URL的基本URL。所以基本上你使用绝对路径,当你应该依靠facebook的网络托管来解析路径时


因此,请将
/styles/main.css
更改为
styles/main.css
,并删除

共享您的index.html代码,以便我们可以检查,以及您从404错误控制台直接将URL放入浏览器地址栏时得到的结果?@syedeKramudinemon感谢您的回复。我添加了一些细节,你搞定了!万分感谢!我甚至不记得把那个标签放在那里了!