cors 相关问题

当您在浏览器devtools控制台中看到有关CORS(跨源资源共享)的消息时,请使用此标记 - 例如,您的浏览器记录了有关Access-Control-Allow-Origin的错误,并且您想知道如何消除错误。还有关于CORS协议的其他问题(在https://fetch.spec.whatwg.org/中定义,作为使用响应头来告诉浏览器放宽同源策略并允许跨源XHR / Fetch / Ajax的方法)要求)

有没有办法告诉cefsharp将javascript发送到哪个iframe?

我正在使用 cefsharp 创建自己的应用程序,并使用 ExecuteScriptAsync 将 javascript 发送到正在查看的网站。但是,我遇到了我需要使用的元素嵌套的问题......

回答 1 投票 0

React 应用不显示 ASP.NET Core / EF Core 数据库数据,使用 Cors 访问它们(Neil Cummings 关于 REACT 的教程)

React 前端位于 3000,我的 ASP.NET Core 后端位于端口 5000。React 部分具有产品定义和从 localhost:5000/api 获取数据,并通过 AddProduct 函数中的 prevState 访问数据。

回答 1 投票 0

如何在Vite上配置CORS?

我的问题是如何在我的 Vite.Config.ts 中导入 CORS,我一直在尝试从 API 端点访问数据,这导致了问题。 据我检查,这是一个 CORS 错误,显示在...

回答 1 投票 0

.NET 8 Cors

我在 Visual Studio 2022 中有 Blazor Web Assembly 独立 pProject。 现在,当我想使用 HttpClient 并从某个网站获取一些数据时,我收到此错误: 访问'https://tapi.ba...

回答 1 投票 0

为什么我在调用 POST 时会收到 CORS 错误?

我在 Azure 上有一个用户数据库,我正在尝试从我的 React 应用程序调用 POST。但每次尝试时,我都会收到此错误:Access to XMLHttpRequest at 'https://stin-backend-apimanag.azure-api.ne...

回答 1 投票 0

获取 gin 服务器后出现 cors 错误,甚至 *切换* 到另一个后端

Access-Control-Allow-Origin 正确设置为“*”; 尝试使用nestjs作为具有相同地址的后端,工作得很好。 但是使用gin时,虽然header设置正确,但是还是得到...

回答 1 投票 0

获取错误 CORS 策略:Angular 和 Spring Boot

我收到以下错误: 从源“http://localhost:4200”访问位于“http://localhost:8080/basicauth”的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应...

回答 1 投票 0

请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问原点“null”

我正在尝试使用omniauth 将我的客户定向到外部服务授权页面。我的客户端使用 ember.js,我的服务器是 Rails 服务器。就目前情况而言,我可以通过

回答 2 投票 0

X-Requested-With 标头有什么意义?

JQuery 和其他框架添加以下标头: X 请求方式:XMLHttpRequest 为什么需要这个?为什么服务器要以不同于普通请求的方式处理 AJAX 请求? 更新...

回答 3 投票 0

从任何 Web 应用程序调用时,Window exe API 会出现问题。 C++

我们使用CPP语言创建了一个EXE文件,并创建了一个API,例如http://localhost:5800/get-id/。当我在浏览器中打开时,返回完美的输出。 当我在 HTML > 脚本 p 中使用 fetch 时...

回答 2 投票 0

无法在托管设备以外的设备上从 Node.js 服务器获取数据

我遇到了一个问题,除了托管服务器的设备之外,我无法从其他设备建立到服务器的连接。服务器在本地运行,我正在开发一个 Web 应用程序 u...

回答 1 投票 0

客户端无法访问 Kubernetes 本地集群中的服务器

我正在使用我的电脑学习 helm 和 k8s 上的部署,并且有几个问题。 一些背景: 一个简单的 TodoList - 客户端和服务器,连接到数据库(目前没有数据库

回答 1 投票 0

socket.io,“访问控制允许来源”错误

我已经设置了一个带有套接字io转动的节点服务器,并尝试通过另一台服务器连接到它。 然而,不同计算机上的某些浏览器给我这个错误,并使其重新连接整个

回答 10 投票 0

从源“http://localhost:3000”获取“http://localhost:4000/graphql”的访问已被 CORS 策略阻止

app.register(fastifyCors, { 来源:'http://localhost:3000', 方法:“获取、头部、放置、补丁、发布、删除”, }); 这是我的 fastify 和 graphql-helix 服务器代码的 CORS 配置...

回答 1 投票 0

React 应用中通过 Axios 向后端发送数据时的 CORS 问题

从源“http://localhost:5173”访问“http://localhost:8080/api/submitForm”处的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查。 ..

回答 1 投票 0

使用 Spring Security 启用 CORS

我一直在尝试启用 CORS 以通过 Angular 应用程序使用我的 Spring Boot API,但它不起作用。 代码如下: @豆 公共SecurityFilterChain securityFilterChain(HttpSe...

回答 1 投票 0

“http://localhost:3000”已被 CORS 阻止

我一直在尝试将我的react .js 文件连接到后端。我在 API Gateway 中有一个 API,我创建了一个方法并启用了 CORS 并授予其访问权限 method.response.header.Access-Control-Allow-Hea...

回答 1 投票 0

带有 PHP 标头的跨源请求标头 (CORS)

我有一个简单的 PHP 脚本,我正在尝试跨域 CORS 请求: 我有一个简单的 PHP 脚本,我正在尝试跨域 CORS 请求: <?php header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Headers: *"); ... 但我仍然收到错误: X-Requested-With 不允许Access-Control-Allow-Headers请求标头字段 我还缺少什么吗? 正确处理 CORS 请求有点复杂。这是一个可以更全面(且正确)响应的函数。 /** * An example CORS-compliant method. It will allow any GET, POST, or OPTIONS requests from any * origin. * * In a production environment, you probably want to be more restrictive, but this gives you * the general idea of what is involved. For the nitty-gritty low-down, read: * * - https://developer.mozilla.org/en/HTTP_access_control * - https://fetch.spec.whatwg.org/#http-cors-protocol * */ function cors() { // Allow from any origin if (isset($_SERVER['HTTP_ORIGIN'])) { // Decide if the origin in $_SERVER['HTTP_ORIGIN'] is one // you want to allow, and if so: header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}"); header('Access-Control-Allow-Credentials: true'); header('Access-Control-Max-Age: 86400'); // cache for 1 day } // Access-Control headers are received during OPTIONS requests if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') { if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD'])) // may also be using PUT, PATCH, HEAD etc header("Access-Control-Allow-Methods: GET, POST, OPTIONS"); if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS'])) header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}"); exit(0); } echo "You have CORS!"; } 安全注意事项 根据批准的来源列表检查 HTTP_ORIGIN 标头。 如果来源未获批准,那么您应该拒绝该请求。 请阅读规格。 TL;博士 当浏览器想要执行跨站点请求时,它首先确认对 URL 的“飞行前”请求是否可以。通过允许 CORS,您将告诉浏览器来自此 URL 的响应可以与其他域共享。 CORS 不保护您的服务器。 CORS 尝试通过告诉浏览器与其他域共享响应的限制来保护您的用户。通常情况下,这种共享是完全被禁止的,因此 CORS 是一种在浏览器的正常安全策略中戳破漏洞的方法。这些漏洞应该尽可能小,因此请务必根据某种内部列表检查 HTTP_ORIGIN。 这里存在一些危险,特别是如果 URL 提供的数据通常受到保护。您实际上是在允许源自其他服务器的浏览器内容读取(并可能操纵)您服务器上的数据。 如果您打算使用 CORS,请仔细阅读协议(它很小)并尝试了解您在做什么。代码示例中给出了用于此目的的参考 URL。 标头安全 据观察,HTTP_ORIGIN 标头不安全,这是事实。事实上,所有 HTTP 标头对于该术语的不同含义都是不安全的。除非标头包含可验证的签名/hmac,或者整个对话通过 TLS 进行身份验证,否则标头只是“浏览器告诉我的内容”。 在这种情况下,浏览器会说“来自域 X 的对象想要从此 URL 获取响应。可以吗?” CORS 的重点是能够回答“是的,我会允许这样做”。 我遇到了同样的错误,并在后端脚本中使用以下 PHP 修复了它: header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: GET, POST'); header("Access-Control-Allow-Headers: X-Requested-With"); Access-Control-Allow-Headers 不允许 * 作为可接受的值,请参阅 Mozilla 文档此处。 您应该发送接受的标头(而不是星号)(首先是 X-Requested-With,如错误所示)。 更新: *现已接受是Access-Control-Allow-Headers。 根据 MDN Web 文档 2021: 值 * 仅算作没有凭据的请求(没有 HTTP cookie 或 HTTP 身份验证信息的请求)的特殊通配符值。在带有凭据的请求中,它被视为文字标头名称*,没有特殊语义。请注意,授权标头不能使用通配符,并且始终需要显式列出。 互联网上的许多描述都没有提到指定 Access-Control-Allow-Origin 是不够的。这是一个适合我的完整示例: <?php if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') { header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: POST, GET, DELETE, PUT, PATCH, OPTIONS'); header('Access-Control-Allow-Headers: token, Content-Type'); header('Access-Control-Max-Age: 1728000'); header('Content-Length: 0'); header('Content-Type: text/plain'); die(); } header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json'); $ret = [ 'result' => 'OK', ]; print json_encode($ret); 如果您想从 PHP 创建 CORS 服务,您可以使用此代码作为处理请求的文件中的第一步: // Allow from any origin if(isset($_SERVER["HTTP_ORIGIN"])) { // You can decide if the origin in $_SERVER['HTTP_ORIGIN'] is something you want to allow, or as we do here, just allow all header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}"); } else { //No HTTP_ORIGIN set, so we allow any. You can disallow if needed here header("Access-Control-Allow-Origin: *"); } header("Access-Control-Allow-Credentials: true"); header("Access-Control-Max-Age: 600"); // cache for 10 minutes if($_SERVER["REQUEST_METHOD"] == "OPTIONS") { if (isset($_SERVER["HTTP_ACCESS_CONTROL_REQUEST_METHOD"])) header("Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE, PUT"); //Make sure you remove those you do not want to support if (isset($_SERVER["HTTP_ACCESS_CONTROL_REQUEST_HEADERS"])) header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}"); //Just exit with 200 OK with the above headers for OPTIONS method exit(0); } //From here, handle the request as it is ok 我只是设法让 dropzone 和其他插件来处理此修复(angularjs + php 后端) header('Access-Control-Allow-Origin: *'); header("Access-Control-Allow-Credentials: true"); header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS'); header('Access-Control-Max-Age: 1000'); header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token , Authorization'); 将其添加到您的 upload.php 或您要发送请求的位置(例如,如果您有 upload.html 并且您需要将文件附加到 upload.php,然后复制并粘贴这 4 行)。 另外,如果您在 chrome/mozilla 中使用 CORS 插件/附加组件,请务必多次切换它们,以便启用 CORS 当使用 Angular 4 作为客户端、PHP 作为服务器端时,这么多代码对我来说很有效。 header("Access-Control-Allow-Origin: *"); 如果我们不能正确理解 CORS 的功能,它可能会让人头疼。我在 PHP 中使用它们并且它们工作没有问题。 参考这里 header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Credentials: true"); header("Access-Control-Max-Age: 1000"); header("Access-Control-Allow-Headers: X-Requested-With, Content-Type, Origin, Cache-Control, Pragma, Authorization, Accept, Accept-Encoding"); header("Access-Control-Allow-Methods: PUT, POST, GET, OPTIONS, DELETE"); 这应该有效 header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Headers: X-Requested-With, Content-Type, Origin, Cache-Control, Pragma, Authorization, Accept, Accept-Encoding"); 我使用了这5个标头,之后解决了cors错误(后端:PHP,前端:VUE JS) header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS, post, get'); header('Access-Control-Max-Age: 3600'); header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token'); header('Access-Control-Allow-Credentials: true'); 将此代码添加到.htaccess 在标头中添加自定义身份验证密钥,如 app_key、auth_key ..etc Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Headers: "customKey1,customKey2, headers, Origin, X-Requested-With, Content-Type, Accept, Authorization"

回答 11 投票 0

POSTMAN 工作时出现 Angular POST 跨源错误

我尝试从我的角度登录服务发布: $http.post('https://xyz/login', { 标题:{ '内容类型':'应用程序/json', '一个...

回答 4 投票 0

云函数显示错误行为

我有两个云函数来做一些简单的簿记工作。 handleUserIn 保留用户登录的跟踪,handleUserOut 保留用户注销的跟踪。 以下是两者的代码

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.