关于html2canvas跨域设置
最近在做js生成图片的功能,因为有的商户logo图片在阿里云oss存储的,所以遇到了跨域的问题。跨域的话可以在服务器端设置header,
跨域的话目前的解决方案是服务端设置,Access-Control-Allow-Origin。阿里云oss有配置的的地方,直接配置就好了。
我这里遇到一个比较坑的地方,阿里云配置好了,但是请求还是报跨域。最后发现是浏览器缓存的问题,在浏览器中disable cache之后,请求就没有问题了。
如果在js中请求图片的话,在请求头上加上cache-control的设置,cache-control设置为no-cache就好了。这个问题折腾了一天,多亏阿里云的大侠出手相助。
记录下跨域请求的大概流程, 客户端发送origin的请求头,如果服务端响应头返回Access-Control-Allow-Origin,客户端会再此发送请求。
如果都设置了不起作用,看下客户端的请求头和服务端的响应头就好了。
我这里简单记录下,有相同问题的可以留言给我,跨域的问题基本上处理起来都是差不多的。