当前位置: 首页 > article >正文

C# HttpClient请求URL重定向后丢失Authorization认证头

搜查官方文档后发现:
HttpWebRequest.AllowAutoRedirect Property (System.Net) | Microsoft Learn

微软提供的http类库HttpClient (HttpWebRequest\WebClient已不推荐使用,用HttpClient代替)有备注提醒:当使用自动重定向时,认证头会自动清除,目的是保证安全问题。至此问题清晰,找类库代替。
Doc
解决方案:
使用 Flurl库

string url = "http://127.0.0.1:8080/test/api";


var response = url.WithHeader("Content-Type", "application/json")
    .WithHeader(
        "Authorization",
        "Basic"
    )
    .WithSettings(s => s.Redirects.Enabled = true)
    .WithSettings(s => s.Redirects.ForwardAuthorizationHeader = true)
    .WithSettings(s => s.Redirects.ForwardHeaders = true)
    .WithHeader("Expect", "100-continue")
    .PutStringAsync(File.ReadAllText(filePath))
    .GetAwaiter()
    .GetResult();
// Handle the response
Console.WriteLine(response.GetStringAsync().GetAwaiter().GetResult());


http://www.kler.cn/a/328601.html

相关文章:

  • 脚本运行禁止:npm 无法加载文件,因为在此系统上禁止运行脚本
  • Leetcode 45. 跳跃游戏 II
  • 金融级分布式数据库如何优化?PawSQL发布OceanBase专项调优指南
  • 单片机基础模块学习——超声波传感器
  • [250125] DeepSeek 发布开源大模型 R1,性能比肩 OpenAI o1 | 希捷推出高达 36TB 的硬盘
  • 【数据结构】二叉树
  • 基于RustDesk自建远程桌面服务
  • 0基础学前端 day9--css布局
  • UI设计师面试整理-团队合作与沟通能力
  • 深度学习·wandb
  • 自然语言处理问答系统技术
  • html5 + css3(下)
  • STL容器适配器
  • OpenCV 形态学相关函数详解及用法示例
  • 字符串逆序
  • 滚雪球学MySQL[3.3讲]:MySQL复杂查询详解:CASE语句、自连接与视图管理
  • OpenCV视频I/O(11)视频采集类VideoCapture之设置视频捕获设备的属性函数 set()的使用
  • Go语言入门:掌握基础语法与核心概念
  • 决策树的损失函数公式详细说明和例子说明
  • JS+HTML基础
  • 小徐影院:探索Spring Boot的影院管理
  • 您的计算机已被Lockbit3.0勒索病毒感染?恢复您的数据的方法在这里!
  • Windows 上安装 PostgreSQL
  • Qt界面优化——QSS
  • hystrix微服务部署
  • Raft 协议解读:简化分布式一致性