在角应用程序中获取角度转换JSON文件时出错

时间:2014-03-12 14:59:07

标签: json angularjs angular-translate

我有一个带有一些i18n JSON文件的角度应用程序。文件工作正常 - 根据选择的文件,网站的语言会完全改变。但是,我得到一个有趣的控制台错误,我无法弄清楚 -

Uncaught SyntaxError: Unexpected token : at en.json: 2

Resource interpreted as Script but transferred with MIME type application/octet-stream

控制台中每个文件都会出现相同的错误。

我的文件结构方式有问题吗?

en.json中的数据示例:

{ 
    "WELCOME" : "Welcome",
    "HOME" : "Home",
    "GO" : "Go",
    "LOGOUT" : "Log Out"
}

1 个答案:

答案 0 :(得分:1)

您的JSON文件没有任何问题,但根据控制台日志,您的Web服务器似乎没有设置正确的响应标头Content-Type,应该是application/json。 因此,您的浏览器会尝试将您的文件解释为JavaScript文件,并找到无效的令牌。

例如,对于Nginx,您可以使用HTML5-Boilerplate项目(https://github.com/h5bp/server-configs-nginx/blob/master/mime.types)提供的mime类型配置文件,并将其包含在您的Nginx配置中:

include /etc/nginx/mime.types;

它包含以下指令设置application/json作为JSON的内容类型:

types {
  application/json                      json;
}