go http接口返回1×1像素图片

最近做一个统计接口,准备用图片方式发起网络请求

new Image().src='http://xxx.xxx.com/s?_='+new Date().getTime();

然后接口/sgo快速写了个接口,返回200状态码和空响应体。
统计用的好好的,但是遇上一些懒加载框架就会出现反复请求的情况,
因为这张图片并不是真的图片,图片在预加载时失败,故反复加载。

要解决也很简单,返回一个1x1像素的图片数据就可以了。

http.HandleFunc("/a.gif", func(writer http.ResponseWriter, request *http.Request) {
	writer.Header().Set("Content-Type", "image/gif")
	writer.Header().Set("Cache-Control", "private, no-cache, no-cache=Set-Cookie, proxy-revalidate")
	writer.Header().Set("Pragma", "no-cache")
	writer.Header().Set("Expires", "Wed, 17 Sep 1975 21:32:10 GMT")
	_, _ = writer.Write([]byte{
		0x47, 0x49, 0x46, 0x38, 0x39, 0x61,
		0x01, 0x00, 0x01, 0x00, 0x80, 0xff,
		0x00, 0xff, 0xff, 0xff, 0x00, 0x00,
		0x00, 0x2c, 0x00, 0x00, 0x00, 0x00,
		0x01, 0x00, 0x01, 0x00, 0x00, 0x02,
		0x02, 0x44, 0x01, 0x00, 0x3b,
	})
})
_ = http.ListenAndServe(":8088", nil)

版权声明:
作者:Mr李
链接:https://www.techfm.club/p/1046.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>