当前位置: 首页 > 知识库问答 >
问题:

'http://localhost:8080'已被CORS策略Laravel8阻止

杜志
2023-03-14

当我使用HTML2Canvas评估图像时,我得到了这个错误。

CORS策略阻止从来源“http://localhost:8080”访问位于“http://testdomain.com/storage/images/products/user_front.png”的映像:请求的资源上没有“Access-Control-Allow-Origin”标头。

下面是我的cors配置。

return [
    'paths' => ['api/*', 'sanctum/csrf-cookie'],
    'allowed_methods' => ['*'],
    'allowed_origins' => ['*'],
    'allowed_origins_patterns' => [],
    'allowed_headers' => ['*'],
    'exposed_headers' => [],
    'max_age' => 0,
    'supports_credentials' => false,
];

有人能帮我吗?

共有1个答案

许兴文
2023-03-14

Html to canvas使用DOM中的元素,这就是为什么它需要公用文件夹中的cors,但laravel不支持这一点,它只支持带有API的cors。您需要更改配置文件。

如果您正在使用nginx,请使用以下命令:

location /storage/ {
    add_header 'Access-Control-Allow-Origin' '*';
}

阿帕奇:

<IfModule mod_headers.c>
    <FilesMatch "\.(bmp|cur|gif|ico|jpe?g|png|svgz?|webp|pdf)$">
        Header set Access-Control-Allow-Origin "*"
    </FilesMatch>
</IfModule>
 类似资料:
  • 有一个应用程序在角7也有一个. net web api解决方案,当我调用一个动作CORS问题发生,错误如下 CORS策略阻止从http://localhost:57467/UserDetails/GetUserDetailshttp://localhost:4200访问XMLHttpRequest:对预试请求的响应不通过权限改造检查:请求的资源上不存在访问控制允许起源标头。 我试图使用Web ap

  • 交叉起源没有发生,被CORS策略阻止。 我使用的是Windows系统。 在文件中: 在文件中: 我在浏览器控制台中遇到此错误: CORS策略阻止了从http://localhost:1111/api/v1/employees/createhttp://localhost:4200对XMLHttpRequest的访问:对预飞行请求的响应没有通过权限改造检查:请求的资源上没有访问控制允许起源标头。<-

  • 我试图部署一个API用于前端。当单独测试API时,它是工作的,但当集成到Vue应用程序中时,它返回CORS错误,错误返回是: CORS策略阻止从来源“http://localhost:8080”访问位于“https://apidomain/development/pin”的XMLHttpRequest:请求的资源上没有“Access-Control-Allow-Origin”标头。 我使用serv

  • 我有一个。NET核心应用程序,它有一个REST API被一个角客户机使用,但遇到了CORS问题。 但仍在客户端(运行在本地端口4200上)中获取错误: CORS策略阻止从来源“HTTP://localhost:4200”访问位于“HTTP://localhost/myapi/api/table”的XMLHttpRequest:对飞行前请求的响应没有通过访问控制检查:它没有HTTP ok状态。

  • 请求标头如下所示: 临时头显示为access-control-request-headers:content-type access-control-request-method:POST origin:http://localhost:4200 referer:http://localhost:4200/login user-agent:mozilla/5.0(Macintosh;Intel M

  • 我在Axios Laravel crossite中遇到问题,它返回以下erorr: CORS 策略阻止了从源“http://localhost:8000”在“http://localhost/moddle/moodle/login/index.php”处访问 XMLHttpRequest:对预检请求的响应未通过访问控制检查:请求的资源上不存在“访问控制-允许-源”标头。 我在stackoverfl