浏览器的img标签异步请求图片的问题

chally 发布于 2014/09/10 10:10
阅读 3K+
收藏 2

我在 img 的src属性设置了一个 url,请求这个url 返回的是图片文件的字节数组。<img src='/api/img/1'>

现在问来来了,使用谷歌、IE都可以正常访问并显示图片。但使用chrome内核的 360 、猎豹等浏览器,还有移动端的浏览 都显示不了图片。如果只访问src里的url 也可以正常显示图片。对比了下2种浏览器发出的请求如下,核心问题在 accept的类型,怎样能控制请求的类型?

求大神速来!!

// 360或移动浏览器的请求
Accept:*/*
Accept-Charset:GBK,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:zh-CN,zh;q=0.8
Connection:keep-alive
Cookie:JSESSIONID=FF09E35D3BA4ECA845CE22FD478692BA
Host:192.168.1.210:8080
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1

//chrome 的请求
Accept:image/webp,*/*;q=0.8
Accept-Encoding:gzip,deflate,sdch
Accept-Language:zh-CN,zh;q=0.8,en;q=0.6,ja;q=0.4
Connection:keep-alive
Cookie:JSESSIONID=D223EEC485C6D10879C554D6D65AFFAA
Host:192.168.1.210:8080
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36



以下是问题补充:

@chally:最恶心的是 试了几个手机上的浏览器也是如此,IOS基本都是显示不了,部分安卓上的还能显示(大概是使用chrome内核的原因)。 (2014/09/10 10:21)
加载中
0
shuaia
shuaia
貌似这个问题不是你的问题,加个.jpg后缀似乎能解决。以前碰到过类似问题。输出验证码
0
旧城的骁珖
旧城的骁珖
弃用360 、猎豹。你是否是用js引入的图片链接?
0
chally
chally

引用来自“wxg4osc”的评论

弃用360 、猎豹。你是否是用js引入的图片链接?
页面完全加载前,用jquery给src 设置属性。
0
旧城的骁珖
旧城的骁珖

引用来自“wxg4osc”的评论

弃用360 、猎豹。你是否是用js引入的图片链接?

引用来自“chally”的评论

页面完全加载前,用jquery给src 设置属性。
也许是js用法不兼容而已。
0
chally
chally

引用来自“wxg4osc”的评论

弃用360 、猎豹。你是否是用js引入的图片链接?

引用来自“chally”的评论

页面完全加载前,用jquery给src 设置属性。

引用来自“wxg4osc”的评论

也许是js用法不兼容而已。
不同浏览器的img标签发送请求头的 类型不一样,请求是 */*的就有问题,优先使用json转换结果。我现在想的是如何能够控制 accept 的类型。
0
乾坤摄
乾坤摄
这些 内核 都比较 老   chrome内核的 360 、猎豹等浏览器。。。。。。。。。。chrome 30 的内核
0
chally
chally

引用来自“乾坤摄”的评论

这些 内核 都比较 老   chrome内核的 360 、猎豹等浏览器。。。。。。。。。。chrome 30 的内核
刚使用了 chrome31内核的浏览器,世界之窗,问题依旧啊。。   没折了。。
0
k
kukala

是js浏览器不兼容

0
chally
chally

引用来自“kukala”的评论

是js浏览器不兼容

应该不是js 兼容的问题,不太清楚 img 标签是如何让请求图片的。
0
chally
chally

引用来自“shuaia”的评论

貌似这个问题不是你的问题,加个.jpg后缀似乎能解决。以前碰到过类似问题。输出验证码
这个不错,加个后缀名是真解决了,请求的类型也对了,url传过去之后,居然自动忽略了后缀名,参数也没问题。不知道什么原因,不过先解决问题就好。
返回顶部
顶部