出现此问题,首先在几个常用的浏览器(火狐、谷歌、IE)测试下,结果火狐正常,其它出现不解析假象。
一开始觉得是阿里云问题,仔细想想IE出问题就算了,谷歌这么牛逼的也出问题不应该呀,火狐都正常呢。
在反复比对上传问题样式文件与正常问题后发现响应头中 Content-Type 不同
正常的 Content-Type:text/css
异常的 Content-Type:css
问题貌似是找到了,可是为什么类型不一样呢,不得而知。于是上阿里云论坛,希望能找到答案。
翻到一贴标题似乎与我问题一样,心想找到解决办法了,窃喜。原文:有一个CSS文件放在OSS上不能调用
跟贴人写到如下的注意点我好像想到了什么
1、设置为公共读。
2、已绑定域名。
3、contenttype:text/css
跟踪代码,看到下面代码眼熟啊 Meta ContentType
ObjectMetadata metadata = new ObjectMetadata();
metadata.ContentType = filetype;
Content-Type 是自己设置的? 那filetype传入的是什么呢?
额,文件扩展名!,换 text/css 试试,再上传,正常了!
metadata.ContentType 值就是我们常看到的 text/css image/gif 这些
想不通的是,这代码运行了那么久,不知上传了多少文件了,居然一直没有问题?
我可真是命苦,什么问题都遇到了。
我想大概是浏览器兼容做得好吧,就像火狐能解析这问题样式文件一样。
到此问题解析完并得到了解决办法。突然想到国外某大牛说的一句话觉得蛮有道理的。
大意——程序员就是一群自己造BUG,然后修复BUG,如此死循环的过程。