从CORS策略阻止的不同域获取CSS:否';访问控制允许原点';请求的资源上存在标头
我有一个带有一些脚本内容CSS等的RestApi。当我尝试从带有URL链接的API添加CSS时,我被CORS策略阻止:从CORS策略阻止的不同域获取CSS:否';访问控制允许原点';请求的资源上存在标头,css,scripting,cross-domain,Css,Scripting,Cross Domain,我有一个带有一些脚本内容CSS等的RestApi。当我尝试从带有URL链接的API添加CSS时,我被CORS策略阻止:请求的资源上不存在“Access Control Allow Origin”头 只有当我试图获取对.wolf或.ttf的CSS引用时,才会发生这种情况。如fontasome或flaticon 我的第三方站点api allready支持内核,我能够获取脚本和内容,甚至可以使用signalr(websockets)通过AJAX发布和获取 我看到您需要添加:Microsoft.AspN
请求的资源上不存在“Access Control Allow Origin”头
只有当我试图获取对.wolf
或.ttf
的CSS引用时,才会发生这种情况。如fontasome
或flaticon
我的第三方站点api allready支持内核,我能够获取脚本和内容,甚至可以使用signalr(websockets)通过AJAX发布和获取
我看到您需要添加:Microsoft.AspNet.WebApi.Cors
和config.EnableCors()
;
但我只是想访问一个文件,不是控制器,所以我不知道
还有什么地方需要添加它
这就是我想要得到css的方式
这就是错误:
在https://myapi/assets/ccs/flaticon.woff
来源https://ahotherapp
已被CORS策略阻止:请求的资源上不存在“Access Control Allow Origin”标题
首先请阅读此内容,了解如何与CORS共享资源
CORS标准的工作原理是添加新的HTTP头,允许服务器向允许的源域提供资源。浏览器支持这些标题并尊重它们所建立的限制
示例:假设您的站点是,并且在域中有第三方API,您可以通过AJAX访问该API
让我们假设您从my-cool-site.com服务器收到的页面向第三方站点.com发出了请求。通常情况下,用户浏览器会拒绝对除您自己的域/子域之外的任何其他站点的AJAX调用。但如果浏览器和第三方服务器支持CORS,则会发生以下情况:
- 浏览器将向third-party-site.com发送以下HTTP标头
Origin: http://my-cool-site.com
- 如果第三方服务器接受来自您域的请求,它将使用以下HTTP头进行响应:
Access-Control-Allow-Origin: http://my-cool-site.com
- 要允许所有域,第三方服务器可以发送此标头:
Access-Control-Allow-Origin: *
- 如果您的站点不被允许,浏览器将抛出一个错误
如果客户机有相当现代化的服务器,以及您的第三方服务器,那么您完全可以对代码进行一些小的更改
首先,请阅读此文章,了解如何与CORS共享资源
CORS标准的工作原理是添加新的HTTP头,允许服务器向允许的源域提供资源。浏览器支持这些标题并尊重它们所建立的限制
示例:假设您的站点是,并且在域中有第三方API,您可以通过AJAX访问该API
让我们假设您从my-cool-site.com服务器收到的页面向第三方站点.com发出了请求。通常情况下,用户浏览器会拒绝对除您自己的域/子域之外的任何其他站点的AJAX调用。但如果浏览器和第三方服务器支持CORS,则会发生以下情况:
- 浏览器将向third-party-site.com发送以下HTTP标头
Origin: http://my-cool-site.com
- 如果第三方服务器接受来自您域的请求,它将使用以下HTTP头进行响应:
Access-Control-Allow-Origin: http://my-cool-site.com
- 要允许所有域,第三方服务器可以发送此标头:
Access-Control-Allow-Origin: *
- 如果您的站点不被允许,浏览器将抛出一个错误
如果客户机有相当现代化的服务器,以及您的第三方服务器,那么您完全可以对代码进行一些小的更改
我的第三方网站allready支持内核,我可以获取脚本和内容,甚至可以通过AJAX发布文章和获取内容,甚至可以与signalr(websockets)一起使用。在本例中,当我的引用脚本有一个.woff文件或.ttf不起作用时,我没有使用AJAX只是对字体的链接引用。我甚至没有访问api,只是一个css文件。@Alejandro Gomez-Guerrero,我看到了你的编辑。它是关于你特定的CSS URL,与其他字体、WebSocket等无关,。。。CORS里再也没有了。请检查开发者工具
中的标题响应,并确保访问控制允许来源
的正确标题存在。我可以得到以下信息:这不是:同一个目录boostrap没有.wolf或.ttf文件,但flaticon有,并且其中一个是bocked我如何修复我的第三方站点allready支持cores,我可以通过AJAX获取脚本和内容,甚至可以使用signalr(websockets)进行发布和获取。在本例中,当我的引用脚本有一个.woff文件或.ttf不起作用时,我没有使用AJAX只是对字体的链接引用。我甚至没有访问api,只是一个css文件。@Alejandro Gomez-Guerrero,我看到了你的编辑。它是关于你特定的CSS URL,与其他字体、WebSocket等无关,。。。CORS里再也没有了。请检查开发者工具
中的标题响应,并确保访问控制允许来源
的正确标题存在。我可以得到以下信息:这不是:同一个目录boostrap没有.wolf或.ttf文件,但flaticon有,而那是bocked。我如何修复它