首页 > 其他分享 >.NetCore在跨域时设置自定义响应头的注意事项

.NetCore在跨域时设置自定义响应头的注意事项

时间:2024-04-09 15:24:41浏览次数:30  
标签:Control 跨域 自定义 NetCore Access 响应

  现在B/S开发基本都是前后端分离的方式了吧,那么这往往会涉及到一个跨域的问题,为了安全,跨域访问往往做了很多的限制,这里对跨域时自定义响应头做个笔记。

  当我们在.NetCore的后端给请求添加了一个自定义的响应头的时候,通过api调用,响应头完美的返回:  

    public class HomeController : ControllerBase
    {
        [HttpGet]
        public object Get()
        {
            Response.Headers["Access-Token"] = "XXXXXXXX";
            return "Hello";
        }
    }

  接口响应可以看到有响应头:

  

  然后你兴高采烈的提交接口,提交给前端,然后前端说拿不到响应头,这就有点纳闷了,明明返回了,为什么会拿不到?

  其实,这也是跨域访问的一个限制,这就要说说Access-Control-Expose-Headers 这个响应头了,它的作用主要是在响应跨源请求中,允许服务器指定哪些响应头可以暴露给浏览器中运行的脚本(js),往往它需要和Access-Control-Allow-OriginAccess-Control-Allow-Methods 等一起使用,毕竟要在跨域请求中啦。

  所以,我们只需要在跨域的管道配置中添加这个自定义的响应头既可以:  

    //跨域
    services.AddCors(options =>
    {
        options.AddDefaultPolicy(builder =>
        {
            builder.AllowAnyHeader()
                .AllowAnyOrigin()
                .AllowAnyMethod()
                .WithExposedHeaders("Access-Token");
        });
    });

  这样我们就可以前端脚本上拿到这个响应头了。

标签:Control,跨域,自定义,NetCore,Access,响应
From: https://www.cnblogs.com/shanfeng1000/p/18092595

相关文章

  • Python中的异常处理 异常是什么? 异常处理的语法 基本的异常处理示例 捕获多个异常 fin
    Python中的异常处理异常是什么?异常处理的语法基本的异常处理示例捕获多个异常finally语句自定义异常异常处理的最佳实践——《跟老吕学Python编程》附录资料Python中的异常处理异常是什么?异常处理的语法基本的异常处理示例Python捕获多个异常finally语句Py......
  • Ascend C 自定义算子 Kernel Launch调用入门
    本文分享自华为云社区《AscendC自定义算子KernelLaunch调用入门》,作者:jackwangcumt。1KernelLaunch概述根据官方说明文档的介绍,AscendC对外开放核函数的基础调用(KernelLaunch)方式,是为了简化AscendC自定义算子的开发流程,提供更易用的调试调优功能。当开发者完成算子核......
  • 基于 FFmpeg 的自定义 Media Extractor(2):自定义 Extractor 的实现方法
    文章目录前言C/NDKAPI简介C++API简介实现自定义Extractor编译自定义Extractor参考资料前言在上一篇文章中,简要介绍了Extractor组件选择及创建过程。本文将继续基于Android11探索自定义Extractor的实现,及其接入到Android多媒体框架中的方法。C/NDKA......
  • uniapp 微信小程序自定义tabbar
    为什么要自定义?自定义tabbar可做事件拦截,可自定义样式等。第一步:隐藏原生tabbar第二步:page.json中定义路径 第三步:创建自定义组件目录 代码<template> <viewclass='tabbar'> <view class='tab' v-for="(item,index)intabbarList" :key='index......
  • Spring Data JPA应用之自定义Repository实现
    在SpringBoot对SpringDataJPA的支持中可以观察到对于数据访问并没有复杂的业务逻辑,可以知道SpringDataJPA提供了代理模式进行处理。跟踪源码可以知道其使用了SimpleJapRepository。那么这个类的有什么特点呢?通......
  • 题目 1035: [编程入门]自定义函数之字符类型统计
    一、题目 题目描述编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。只要结果,别输出什么提示信息。输入格式一行字符串输出格式统计数据,4个数字,空格分开。样例输入!@#$%^QWERT   1234567......
  • 使用未安装的自定义字体
    默认宋体效果:使用程序目录下未安装的自定义字体“华文琥珀”:PrivateSubButton1_Click(senderAsObject,eAsEventArgs)HandlesButton1.ClickDimPFCAsNewDrawing.Text.PrivateFontCollection()PFC.AddFontFile(AppDomain.CurrentDomain.Base......
  • Chromium 自定义缓存策略
    目录CefRequestHandler在什么位置实现我如何将本地资源作为该请求资源返回呢?我怎么缓存网络资源呢,比如图片和视频?CefResourceHandler如何实现缓存图片和视频,缓存时间无限长,设置缓存路径?demoMyResourceHandler在哪里设置?ChromiumEmbeddedFramework(CEF)是一个开源库,用于......
  • 野外监测图传解决方案 l 自定义数据回传最大200倍压缩,天通野外摄像机PS02
    在物联网时代的巨大浪潮中,我们见证了技术的飞速发展和应用的广泛渗透。然而,传统的人工巡检方式在这一进程中显得越来越力不从心,其效率低下和响应迟缓的问题日益凸显。在许多情况下,人工巡检无法实时捕捉到潜在的风险和异常情况,常常是在事故发生后才能察觉,这种滞后性严重制约了......
  • Ascend C 自定义PRelu算子
    本文分享自华为云社区《AscendC自定义PRelu算子》,作者:jackwangcumt。1PRelu算子概述PReLU是ParametricRectifiedLinearUnit的缩写,首次由何凯明团队提出,和LeakyReLU非常类似,是Relu的改进版本,在几乎没有增加额外参数的前提下既可以提升模型的拟合能力,又能减小过拟合风险。......