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

【C#】HTTP中URL编码方式解析

前言:当调用HTTP请求时,通常有get和post两种方式

类型位置内容格式常见用途示例
Query 参数URL 里(? 后)key=value&key=value标识性参数(如分页、过滤条件)GET /api/user?id=1
Form-data请求体中多段分隔(MIME multipart)上传文件、图片、混合数据Content-Type: multipart/form-data
Urlencoded请求体中key=value&key=value表单提交(纯文本字段)Content-Type: application/x-www-form-urlencoded
Raw JSON请求体中JSON 字符串现代 API 请求(REST)Content-Type: application/json

在传参的时候,有些参数可能带一些特殊字符,比如&,"等等,因此需要编码。
编码方式如下:

方法名所属命名空间编码标准常见用途是否限制长度特点
Uri.EscapeDataString()SystemRFC 3986用于单个参数值✅ 有(约 32,766)严格编码规则,推荐用于 query
Uri.EscapeUriString()SystemRFC 3986用于整条 URL✅ 有不会转义 /?#
HttpUtility.UrlEncode()System.WebHTML 表单标准表单、查询字符串⚠️ 无显式限制ASP.NET 中最常用
WebUtility.UrlEncode()System.NetHTML 表单标准通用 URL 编码⚠️ 无显式限制.NET 4.0+,轻量级
HttpUtility.HtmlEncode()System.WebHTML 实体防止 XSS 攻击❌ 无限制用于网页显示
Uri.UnescapeDataString()SystemRFC 3986解码✅ 有EscapeDataString 对应
HttpUtility.UrlDecode()System.WebHTML 表单标准解码❌ 无限制UrlEncode() 配对

其中HttpUtility.UrlEncode() 主要用于参数编码,需要有对应的解码;Uri.EscapeDataString()也是用于参数编码,但是可以不解码,因为大部分服务器端框架(包括 ASP.NET、Web API、MVC)在接收请求时,会自动为你解码 URL 参数。

完结撒花~

http://www.dtcms.com/a/564476.html

相关文章:

  • 高速打印,安全稳定全兼顾 至像国产芯系列M3500DNWA应用测评
  • MacOS 安装Python 3.13【同时保留旧版本】
  • 八股训练营第 6 天 | HTTPS 和HTTP 有哪些区别?HTTPS的工作原理(HTTPS建立连接的过程)?TCP和UDP的区别?
  • 多阶段构建:打造最小化的 Spring Boot Docker 镜像
  • 在windows或者mac配置安装miniforge3
  • Arbess零基础学习 - 使用Arbess+GitPuk实现Java项目构建并Docker部署
  • 网站注册备案之后怎么做营销网络平台
  • laya3如何打包mac包
  • 【Linux】从内存布局到信号屏蔽:Linux 内核态与用户态交互核心知识点汇总
  • Docker:创建自定义容器,附通用Python 3.12模板
  • 从开源到智能体:OpenCSG 的长期主义
  • 合肥的网站建设州满分企业网
  • java通过模板渲染PDF报告
  • 基于 Verl 前端与 Atlas A3 集群的 DeepSeek-R1 模型 RL 训练优化实践:Cann-recipes-train 仓库技术深度解读
  • 技术评测:六行神算大模型平台实战分析
  • SecureShellProtocol(ssh)
  • HAproxy负载均衡详细介绍
  • Rust编程学习 - 如何快速构建一个单线程 web server
  • 1、PCB导入Siwave并设置叠层数据
  • 网站做生鲜线下推广建议舆情通
  • 国产电脑可以装windows吗_国产电脑安装windows要求及方法
  • Linux 基本指令入门:从基础操作到实战应用
  • 专门做任务的网站吗查看网站流量
  • 建设一个招聘网站大概多少费用wordpress主题应该怎么添加
  • flink 核心
  • 《LLMmap: Fingerprinting for Large Language Models》论文阅读
  • 节点小宝4.0版本功能升级预告:简化远程操作,优化用户体验
  • 基于卷积神经网络的作物病害识别系统(论文+源码)
  • Vue预览Excel文件的完整指南:从零开始实现
  • 黄金网站下载免费wordpress 邮箱发布