我有一个带有一些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"
}
答案 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;
}