如何将json文件用于静态服务器?

时间:2014-09-10 22:02:05

标签: javascript json static-site

我已经用angular编写了一个简单的应用程序,我将json数据直接编码到控制器的$scope中,然后我用这些数据填充。我可以使用data.json之类的东西,并将其与js和css文件一起发送到客户端,然后可以读取角度吗?我该怎么做呢?不允许使用Ajax。

2 个答案:

答案 0 :(得分:0)

如果不允许使用AJAX,则必须将文件设为javascript文件,而不是JSON文件。通过这样做,你得到的东西非常类似于JSONP(带填充的JSON)。在这里,您基本上将JSON对象传递给回调函数。例如:

myCallback({"foo":"bar", "bing":1900});

然后,您可以将此文件包含为脚本标记,并使用适当的数据触发您的回调。确保在定义回调函数的脚本标记之后包含数据的脚本标记。

另一种选择是将对象存储为全局变量。通常认为污染全球范围是不好的。

答案 1 :(得分:0)

本地访问

仅限本地访问,您可以使用文件URI(可能,取决于使用的工具):

file:///home/user/project/file.js

而不是

http://somewhere.net/project/file.js

...

分享页面

您必须使用服务器才能向浏览器提供文件(客户端)。

为此,较轻的原型方式是使用 netcat 等工具:

nc -l -p 8080 -q 0 < <(
    echo $'HTTP/1.1 200 OK\r\nContent-type: application/javascript\r\n\r';
    cat file.js)

即使在while true;do ... ;done循环中也是如此。

您可以使用更多特色原型工具,例如Mojolicious或最终确定 服务器包括lighttpdnginxApache或其他..