http请求参数编码问题

2023-11-10

给某api发送http请求,结果查不到数据;而api开发者自测可以查到数据。僵持不下。


经过分析发现,我的url是经过urlencode编码的(传出去的中文变成%E5%B2这种),而api开发者的url是明文传输中文。


我通过httpclient发出的请求,使用uribuilder.addParameter追加参数,而该方法会自动将参数按utf-8编码,导致我传出去的url是%E5%B2。而api端没有解码,导致解析成错误的文字,从而查不到数据。


同样的,前端ajax请求,默认是utf-8编码。而springmvc web.xml中配置了如下字符集过滤器,会自动将utf-8编码的value解码,从而实现自动编码解码。如果没配置该字符集过滤器,则会解码失败。

    <!-- 字符集 过滤器 -->
    <filter>
        <filter-name>CharacterEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>CharacterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

http请求参数编码问题 的相关文章

  • RHEL7计划任务和日志管理

    本节所讲内容 at 定制单次执行的计划任务 cron定制周期性计划任务 配置脚本实现周期性任务 配置公司内网服务器每天自动开关机 Linux系统日志记录规律 自定义日志记录方式 配置远程收集日志服务器 计划任务 at 只能执行一次 语法 a
  • 电商项目完成的BUG调查原因和解决方案

    这是我来到浙大网新恒天后 第一个完成的项目 在完成项目后 我总结了那些自己感觉重要的BUG 第一项目为电商项目 1 BUG系列一 界面销毁时 未关闭广播 dialog等 崩溃 Bug现象 Bug 85778 同一个账号 两部手机登陆 第一个
  • [es6]Symbol.iterator 和 for of

    Symbol iterator 和 for of 是es6的新特性 可以为对象设置 自己的迭代器 首先介绍我们的for of var arr 1 2 3 8 33 for var i of arr console log i 1 2 3 8
  • 使用Python,OpenCV进行去水印,图像修复

    图像修复是图像保存和图像恢复的一种形式 其历史可以追溯到1700年代 当时意大利威尼斯的公共图片修复总监彼得 爱德华兹 Pietro Edwards 应用这种科学方法来修复和保存著名作品 资料来源 图像修复技术显着提高了图像绘画的质量 使我
  • nginx配置代理

    背景 公司一台裸金属服务器由于限制无法访问内部100 X网段的机器 而申请这台裸金属的用户需要访问这个网段的代码仓库codehub 更换机器已经来不及 所以申请了另一台服务器作为nginx代理来访问 配置如下 1 tar包安装nginx指定
  • Java中静态的main方法为什么可以调用非静态成员变量?方法之间调用局部变量?

    静态方法不可以 直接 调用动态方法或动态变量 但是可以创建动态变量 也可以 直接 调用静态方法和静态变量 对象属于动态的 动态的可以调用动态的 也可以调用静态的 综上 1 main 方法是静态的 在main 方法中 我们可以直接调用main
  • Git和其远程仓库的使用

    一 什么是Git远程仓库 目前我们已经掌握了Git基础操作 对于文件的增删改 再也不用担心文件的丢失与误删问题了 如果还有不了解的可以看下我上章节的Git基础教程 对于文件增删改的操作 Git与SVN基本没啥区别 但是GIt究竟强在哪了 这
  • 数据挖掘十大算法(二):K-means聚类算法原理与实现

    参考 1 机器学习 KMeans聚类 K值以及初始类簇中心点的选取 2 K Means算法的研究分析及改进 一 K means算法原理 K means算法是最常用的一种聚类算法 算法的输入为一个样本集 或者称为点集 通过该算法可以将样本进行
  • 运维平台权限表结构设计

  • 【node 报错】Error: Cannot find module ‘路径 / 具体文件名‘

    过程如下 输入 node 文件名 出现报错信息 原因 该终端是在错误的文件路径打开 没在当前文件下的路径打开 因此要在当前的文件下打开终端 运行 node 文件名
  • linux终端密码星星,如何在Ubuntu终端中显示密码星号

    每当要求您在Ubuntu终端中键入密码时 都将插入密码 而不会得到任何可视显示或屏幕反馈 在这种情况下 您可能会通过错误输入密码而弄乱密码 这就是视觉反馈如此重要的原因 它可以帮助您跟踪输入的字符数 尤其是在输入密码时 这样您就不会错过任何
  • tp5 链表查询,查出left表为空的数据

    背景 tp5 A B两表join链表查询 查出B表数据为空的A表数据 以及 B表数据不为空的A表数据 此操作将使用到 EXP 和 IS NULL 查出B表数据为空的A表数据SQL where exp Db raw b id IS NULL
  • 代码随想录算法训练营第十天

    今天是打基础的一天 了解队列和栈的实现 上次学习这块记忆犹新 只要打基础 那天的我肯定是沮丧的 总会是说的时候都懂 写的时候不知道从哪里下手 看看这次会遇到什么 艰难险阻 及时记录下来 哈哈 Java 中 我总是不清楚为什么queue的cr
  • iis服务器文件上传大小限制,IIS修改最大上传文件限制的方法

    我们在修改PageAdmin网站管理系统的附件上传大小时候 经常出现修改后还是上传不了大文件 这是因为服务器系统本身的限制导致的 下面分别对IIs6和IIs7的修改方法作详细介绍 IIS7的修改方法 IIS7 0默认限制上传文件大小为300
  • 堆栈认知——栈溢出实例(ret2libc)

    参考 栈溢出实例 笔记三 ret2libc 地址 https qingmu blog csdn net article details 119481681 目录 1 栈溢出含义及栈结构 2 ret2libc基本思路 3 实战 3 1 二进制
  • python爬虫系列4--BeautifulSoup

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库 中文文档链接 https www crummy com software BeautifulSoup bs4 doc index zh html id
  • jQuery的选择器中的通配符[id^='code']或[name^='code']及jquery选择器总结

    原文地址 http www jb51 net article 76917 htm 建议直接查看原文 1 选择器 1 通配符 input id code id属性以code开始的所有input标签 input id code id属性以cod
  • 基于CNN遥感图象分类+前后端交互

    基于CNN遥感图像分类 前后端交互 基于CNN遥感图像分类 前后端交互 一 项目介绍 1 1 项目简述 1 2 几个概念 二 遥感图片分类模型 2 1 训练数据的处理 三 效果展示 参考资料 项目完整代码 GitHub 一 项目介绍 1 1
  • Caused by org.hibernate.AnnotationException No identifier specified for entity:com.beans.UserInfo

    Causedby org hibernate AnnotationException No identifier specified for entity 这是在SpringBoot 整合SpringDataJPA写测试类遇到的错误 意思是
  • 使用QRCoder生成二维码【.NET 6.0】

    nuget 包 QRCoder 二维码 install package QRCoder 1 4 3 粘贴板 install package TextCopy 6 2 1 using QRCoder using Spectre Console

随机推荐

  • 【毕业设计】 单片机自动写字机器人设计与实现 - 物联网 嵌入式 stm32

    文章目录 0 前言 1 简介 2 主要器件 3 实现效果 4 硬件设计 总体框架 AB32VG1主控MCU 5 软件说明 总体框架 6 部分核心代码 7 最后 0 前言 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的毕设题目缺少创
  • 【Matlab学习笔记】matlab的编程规则

    1 Matlab的续行符 关于matab的换行 在matlab代码的编写过程中 有时会遇到代码在一行显示不开了 或者在txt文档 或其他代码编辑后 由于其本身格式的作用 代码可能会自动换行 将这样的代码直接粘贴到matlab的命令窗口运行
  • Windows系统安装Java环境

    一 安装jdk 不同平台安装不同的包 Oracle官方下载 Oracle官方各版本 推荐安装jdk1 8 32位操作系统 准备jdk xxx windows i586 exe 64为操作系统 准备jdk xxx windows x64 ex
  • Linux进程间通信方式--本地socket

    先上一个代码 服务端 cpp view plain copy s unix c include
  • js获取任意一天的起始和结束时间戳,sql转换时间戳

    最近写代码时 需要获取任意一天的起始和结束时间 0点和23 59 59这两个时间的时间戳 使用了setHours 方法 setHours 方法用于设置指定的时间的小时字段 1 获取当天开始时间 moment new Date new Dat
  • 巨头推广刷脸支付依旧重重加码

    正如当年支付宝推广二维码 在推广刷脸支付上 巨头依旧重重加码 支持商家实现数字化转型 如此力度推广 对于服务商而言是一块巨大的蛋糕 回想推广二维码时期赚的盆满钵满的服务商们 刷脸支付必然会吸引一大波创业者前来逐利 而刷脸支付的红海就在这两年
  • STM32移植lwip之官方工程修改

    本篇目标 在之前的硬件基础上 修改ST官方移植lwip的工程 使PC机能ping通stm32 材料准备 硬件基础 stm32f407 lan9303 官方资料 包含代码和移植手册 stm32官方移植lwip资料 修改代码 包含移植后的代码
  • CPU特权级保护

    1 特权级 1 1特权级 处理器段保护机制可以识别0 3共4级特权级 数值越大 特权越小 处理器通过识别CPL DPL RPL这三种特权级来进行特权级校验 1 CPL CPL是当前正在执行程序或任务的特权级 它存放在CS和SS段寄存器的0位
  • 柏林噪声算法(Perlin Noise)

    概述 引述维基百科的介绍 Perlin噪声 Perlin noise 又称为柏林噪声 指由Ken Perlin发明的自然噪声生成算法 具有在函数上的连续性 并可在多次调用时给出一致的数值 在电子游戏领域中可以透过使用Perlin噪声生成具连
  • 基于霍尔传感器的三轴磁场检测小装置

    本次项目是制作一个三轴磁场检测的小装置 采用霍尔传感器实现检测 首先我们来介绍一下什么是霍尔传感器 1 霍尔传感器介绍 霍尔传感器是根据霍尔效应制作的一种磁场传感器 磁场中有一个霍尔半导体片 恒定电流I从A到B通过该片 在洛仑兹力的作用下
  • Python打包可执行文件-BeeWare

    前言 本文是想要将python代码打包成在手机上能执行的文件 尝试了几个库 有这也那样的限制 最终还是选了BeeWare 环境 python3 7 x 开始 找到打包有相关工具os android apk builder buildozer
  • sqlserver 快速插入数据 如何使用索引_如何快速安全的插入千万条数据

    前言 最近有个需求解析一个订单文件 并且说明文件可达到千万条数据 每条数据大概在20个字段左右 每个字段使用逗号分隔 需要尽量在半小时内入库 思路 估算文件大小 因为告诉文件有千万条 同时每条记录大概在20个字段左右 所以可以大致估算一下整
  • C++opencv图像裁剪、等比例放大缩小、复制到指定区域

    描述 C 使用opencv时 对imshow图像进行的常见处理 包括图像剪裁 等比例压缩等 待继续补充 代码 1 剪裁 int matrix size 3000 cv Mat image matrix size matrix size CV
  • 【CTF\Crypto】聪明的小羊

    聪明的小羊 题目 解题思路 在线的解密工具 离线的解密工具 心得 题目链接 题目 一只小羊翻过了2个栅栏 fa fe13f590lg6d46d0d0 解题思路 观察题目中的关键信息 2个栅栏 所以我们怀疑题目可能是个栅栏密码 我们看见题目中
  • unity 调用android的activity,Unity调用Android的Activity

    写了关于Unity与Android结合所遇到的问题及解决方法 总结一下 Unity做一个简单的场景 AndroidStudio建一个简单的项目 其中MainActivity是要继承自 UnityPlayerActivity的 这样Unity
  • python学习(5):celery-beat-task异步驱动框架

    https github com celery celery tree master examples celery的example程序periodic tasks存在如下问题 2017 08 26 21 52 11 412 INFO Ma
  • 开发中遇到的问题

    1 当写一个导出功能时 因为编码写URL地址 参数的时候 用反转字符串的时候换行了 造成地址拼接不成 一直报错 后来发现是编码格式造成的 已解决 解决方案 不换行或者用 拼接 2 当本地项目起两个终端的时候 会有两个地址 如http loc
  • CSS !important 规则

    CSS important 规则 那么什么是 important呢 CSS中的 important 规则用于向属性 值添加比正常值更重要的内容 事实上 如果你用 important 规则 它将覆盖该元素上该特定属性的所有以前的样式设置规则
  • 利用Matlab实现贝叶斯优化卷积神经网络进行数据回归预测

    利用Matlab实现贝叶斯优化卷积神经网络进行数据回归预测 概述 数据回归预测是一项重要的任务 可以通过建立卷积神经网络 Convolutional Neural Network CNN 来实现 然而 在模型参数调优方面存在着挑战 为了解决
  • http请求参数编码问题

    给某api发送http请求 结果查不到数据 而api开发者自测可以查到数据 僵持不下 经过分析发现 我的url是经过urlencode编码的 传出去的中文变成 E5 B2这种 而api开发者的url是明文传输中文 我通过httpclient