我有一个C# MVC应用程序和一些反应组件。Chrome运行良好,但Edge正在抛出一个Origin https.... not found in Acces-Control-Allow-Origin Header
我阅读了几乎所有与CORS和MVC相关的内容,但都找不到解决办法。
到目前为止我尝试过的->
Web.Config
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
<add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS" />
<add name="Access-Control-Allow-Credentials" value="true" />
</customHeaders>
</httpProtocol>自定义CORS处理程序
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Headers", "*");
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Credentials", "true");
base.OnActionExecuting(filterContext);
}
[AllowCrossSite]
public class ReactController : Controller {....}上述各点似乎都不起作用。Edge仍然抛出CORS错误(即使是关于同一域中的资源(可能与npm包或其他相关)。
有小费吗?
编辑:忘了提到(也许它会有帮助)。这个console.log确实会被触发,但在这一点之后没有任何东西被触发。
import * as React from 'react';
import { TextField } from 'office-ui-fabric-react/lib/TextField';
import { DetailsList, DetailsListLayoutMode, Selection, buildColumns } from 'office-ui-fabric-react/lib/DetailsList';
import { MarqueeSelection } from 'office-ui-fabric-react/lib/MarqueeSelection';
import { Checkbox } from 'office-ui-fabric-react/lib/Checkbox';
import { createRef } from 'office-ui-fabric-react/lib/Utilities';
import { initializeIcons } from 'office-ui-fabric-react/lib/Icons';
import { css, classNamesFunction } from 'office-ui-fabric-react/lib/Utilities';
import { DefaultButton, IButtonProps } from 'office-ui-fabric-react/lib/Button';
import { Label } from 'office-ui-fabric-react/lib/Label';
initializeIcons(/* optional base url */);
console.log("Initialized ");更新:我想我找到了我的问题所在(或另一个与惊人的边缘相关的问题)。
问题可能在于im加载依赖于特定获取请求的列表(im构建sharepoint提供者承载外接程序)。边缘女士似乎讨厌OPTIONS Http动词,因为它会抛出一个错误,说它不支持.
知道我该怎么解决这个问题吗?
发布于 2018-10-31 20:40:23
正如我所想的,在浪费了很多时间之后,错误是因为我正在做的fetch()。
我安装了axios,看起来axios.get()工作时没有任何错误。
https://stackoverflow.com/questions/53087074
复制相似问题