传统网站怎么换成WordPress,网站主服务器域名,唐山网站建设托管,购物网站模板免费下载该错误是一个典型的跨域问题#xff0c;说明从 http://www.fuc.com 发起的请求被目标服务器#xff08;https://aip.baidubce.com#xff09;拒绝#xff0c;原因是目标服务器未返回正确的 AccessControlAllowOrigin 响应头。 解决方法 1. 了解问题的本质 CORS#xff08…该错误是一个典型的跨域问题说明从 http://www.fuc.com 发起的请求被目标服务器https://aip.baidubce.com拒绝原因是目标服务器未返回正确的 AccessControlAllowOrigin 响应头。 解决方法 1. 了解问题的本质 CORS跨域资源共享是一种安全机制用于限制从一个域名向另一个域名发起的请求。 目标服务器https://aip.baidubce.com需要明确允许来自 http://www.fuc.com 的跨域请求但目前它没有返回 AccessControlAllowOrigin。 2. 解决跨域问题的方法 方法 1服务器端代理请求推荐
跨域问题通常可以通过代理服务器解决。
1. 设置 IIS 代理 在 IIS 服务器上创建一个新的代理接口例如 http://www.fuc.com/api/token。 在代理端转发请求到目标服务器 https://aip.baidubce.com/oauth/2.0/token。 配置 web.config xml configuration system.webServer rewrite rules rule nameProxyRule stopProcessingtrue match url^api/token$ / action typeRewrite urlhttps://aip.baidubce.com/oauth/2.0/token?{R:1} / /rule /rules /rewrite /system.webServer /configuration
2. 修改 Unity 请求 URL 将 Unity 中的请求从 https://aip.baidubce.com/oauth/2.0/token 改为 http://www.fuc.com/api/token。 方法 2使用第三方代理服务
可以使用一些现成的代理服务如 Nginx 或 Express部署代理。 Nginx 示例配置 nginx location /api/token { proxy_pass https://aip.baidubce.com/oauth/2.0/token; proxy_set_header Host aip.baidubce.com; proxy_set_header XRealIP $remote_addr; proxy_set_header XForwardedFor $proxy_add_x_forwarded_for; } 方法 3请求目标服务器的支持
如果你有权限修改目标服务器https://aip.baidubce.com的配置可以添加 CORS 支持 返回正确的响应头 AccessControlAllowOrigin: http://www.fuc.com AccessControlAllowMethods: GET, POST, OPTIONS AccessControlAllowHeaders: ContentType, Authorization 方法 4前端调整仅适用于测试
如果你不需要读取响应内容或者只是想跳过 CORS 校验可以将 fetch 的 mode 设置为 nocors
javascript fetch(https://aip.baidubce.com/oauth/2.0/token?client_id...client_secret...grant_typeclient_credentials, { mode: nocors, }) .then(response { console.log(response); // 这里的 response 是一个 opaque 响应无法读取内容 }) .catch(error { console.error(error); }); 但 不推荐此方法因为 nocors 模式会导致无法访问响应内容且不适合生产环境。 3. 检查浏览器与目标服务限制 浏览器缓存问题清理浏览器缓存后重试。 CORS 限制某些云服务如百度 API可能明确限制了跨域访问。如果目标服务无法支持跨域请求代理是唯一的解决办法。 4. 验证 确保修改后使用浏览器开发者工具F12检查请求的响应头是否包含 AccessControlAllowOrigin: http://www.fuc.com 确保 Unity 前端可以正常收到目标 API 的响应。