最近在做js生成图片的功能,因为有的商户logo图片在阿里云oss存储的,所以遇到了跨域的问题。跨域的话可以在服务器端设置header,

跨域的话目前的解决方案是服务端设置,Access-Control-Allow-Origin。阿里云oss有配置的的地方,直接配置就好了。

我这里遇到一个比较坑的地方,阿里云配置好了,但是请求还是报跨域。最后发现是浏览器缓存的问题,在浏览器中disable cache之后,请求就没有问题了。

如果在js中请求图片的话,在请求头上加上cache-control的设置,cache-control设置为no-cache就好了。这个问题折腾了一天,多亏阿里云的大侠出手相助。

记录下跨域请求的大概流程, 客户端发送origin的请求头,如果服务端响应头返回Access-Control-Allow-Origin,客户端会再此发送请求。

如果都设置了不起作用,看下客户端的请求头和服务端的响应头就好了。

我这里简单记录下,有相同问题的可以留言给我,跨域的问题基本上处理起来都是差不多的。

关于html2canvas跨域设置的更多相关文章

  1. chrome浏览器的跨域设置——包括版本49前后两种设置

    做前后分离的webapp开发的时候,出于一些原因往往需要将浏览器设置成支持跨域的模式,好在chrome浏览器就是支持可跨域的设置,网上也有很多chrome跨域设置教程.但是新版本的chrome浏览器提 ...

  2. vue-cli的跨域设置

    概述 今天打算快速使用vue-cli建立一个小应用用于测试,使用axios发送http请求,但是遇到了跨域问题,总结了一下,供以后开发时参考,相信对其他人也有用. vue-cli的跨域设置 在vue. ...

  3. WebApi服务以及跨域设置

    WCF 它利用TCP.HTTP.MSMQ等传输协议构建“契约先行”的服务.WCF最初为基于SOAP的服务而设计[xml],繁琐.冗余.慢.沉重 WebApi 基于http协议,轻量级的,支持URL路由 ...

  4. Mac下的Chrome或Safari访问跨域设置,MBP上使用模拟器Simulator.app或iphone+Safari调试网页

    Mac下的Chrome或Safari访问跨域设置: mac下终端启动Chrome $ open -a Google\ Chrome --args --disable-web-security 或 /A ...

  5. Asp.net core 跨域设置

    验证环境: dotnet core 2.1/Asp.net core2.1 一.作用域在中间件层  配置的方式是在startup.cs文件Configure(IApplicationBuilder a ...

  6. chrome浏览器的跨域设置 Google Chrome浏览器下开启禁用缓存和js跨域限制--disable-web-security

    chrome用户默认路径 Win7:C:\Users\[用户名]\AppData\Local\Google\Chrome\User Data\XP:C:\Documents and Settings\ ...

  7. jexus手动跨域设置

    AP.NET MVC默认跨域方法如下: <system.webServer> <validation validateIntegratedModeConfiguration=&quo ...

  8. SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析

    最近在研究SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1.jquery ajax跨 ...

  9. Chrome Ajax 跨域设置

    一.前言 web 开发中 Ajax 是十分常见的技术,但是在前后端使用接口对接的调试过程中不可避免会碰到跨域问题.今天我给大家介绍一个十分简单有效的方法. 跨域经典错误 二.Chrome 跨域设置 首 ...

随机推荐

  1. Spring中使用RedisTemplate操作Redis(spring-data-redis)

    RedisTemplate如何检查一个key是否存在? return getRedisTemplate().hasKey(key); 由一个问题,复习了一下redis 抄自: https://www. ...

  2. MyCat配置运行

    昨天把mycat的环境搭建差不多了,今天直接上配置文件: 主要需要修改三个配置文件: rule.xml schema.xml server.xml rule.xml配置如图: <?xml ver ...

  3. VC调用外部程序

    #include <windows.h> int main() { STARTUPINFO mStatusInfo; memset(&mStatusInfo, 0, sizeof( ...

  4. spyder中让生成的图像单独在窗口中显示

    IPython 支持两种形式的绘图 终端输出图像新窗口输出图像方式 1 能够非常方便的保存输出记录(如将`IPython 终端输出转换成 Html 文件) 方式 2 则可以交互式的放大.拖动图片,并且 ...

  5. GIT 生成公钥

    ssh-keygen -t rsa -C "xxxxx@xxxxx.com" cat ~/.ssh/id_rsa.pub

  6. 错误:Could not find a getter for CreatTime in class

    org.hibernate.PropertyNotFoundException: Could not find a getter for CreatTime in class org.com.xk.h ...

  7. day44-Celery异步分布式

    celery异步分布式Celery是一个python开发的异步分布式任务调度模块.Celery本身并不提供消息服务,使用第三方服务,也就是borker来传递任务,目前支持rebbimq,redis, ...

  8. Java中的异常处理与抛出

    一.异常处理 程序运行过程中出现的,导致程序无法继续运行的错误叫做异常. Java中有多种异常,所有异常的父类是Throwable,他主要有两个子类Error和Exception. Error一般是J ...

  9. 电梯问题——致敬ACM

      The Fair Nut and Elevator     time limit per test 1 second memory limit per test 256 megabytes inp ...

  10. 【webpack学习笔记】a06-生产环境和开发环境配置

    生产环境和开发环境的配置目标不一样,生产环境主要是让文件压缩得更小,更优化资源,改善加载时间. 而开发环境,主要是要开发更方便,更节省时间,比如调试比如自动刷新. 所以可以分开配置不同的开发环境,然后 ...