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

golang踩坑之url不会decode问题

踩坑记录

不知道小伙伴有没有遇到这样的情况,同样一个http请求(带有重定向url的api),在java中调用后返回的结果是预期内,但是在golang中却会报错或者与预期不符。这是为什么呢?

小编的场景是这样的:
比如这个:http://localhost:/api/test?id=1&redirectUrl=http%3A%2F%2Fhttpbin.org%2Fredirect%2F3,小编有个专门的白名单过滤url,把http://httpbin.org/redirect/3配置进去。

然后在java里调用和postman调用后,结果返回的都是预期内的,但是golang中调用之后就提示不在白名单

小编经过详细的对比,研究发现,原来java中的url会自动encode成正常的url,而go不会,需要手动encode

引入"net/url"包,decode之后再传入就可以了

	redirectUriDecode, err := url.QueryUnescape(redirectUrl)if err != nil {return nil, err}
http://www.dtcms.com/a/289354.html

相关文章:

  • 物联网安装调试-继电器
  • Google-多代理设计:用更好的提示和拓扑优化代理
  • 可视化技术如何拯救柔性生产?小批量定制化订单的排产仿真与产能透视
  • Navicat Premium:一站式数据库管理解决方案
  • Codeforces Round 1037 (Div. 3)(A,B,C,D,E,F,G1)
  • Centos卷挂载失败系统无法启动
  • 力扣:动态规划java
  • 《剥开洋葱看中间件:Node.js请求处理效率与错误控制的深层逻辑》
  • 深度学习篇---矩阵
  • (保姆级)Windows11安装GPU版本Pytorch2.3、CUDA12.6
  • Python爬虫实战:研究Genius库相关技术
  • 【web安全】SQL注入与认证绕过
  • STM32-第八节-TIM定时器-4(编码器接口)
  • Coze智能体长期记忆功能如何做
  • Muon小记
  • 【vue-6】Vue3 响应式数据声明:深入理解 ref()
  • MVP 设计指南:从需求池到产品落地的最小可行路径
  • ABP VNext + Grafana Loki:集中式日志聚合
  • 服装工厂生产管理软件最新核心排名是什么?
  • [simdjson] document_stream | iterate_many() | batch_size | 线程加速 | 轻量handle
  • Pycharm的Terminal打开后默认是python环境
  • 网工实验——路由器小项目
  • 每日面试题10:令牌桶
  • tidyverse-数据可视化 - 图形的分层语法
  • 论文分享(一)
  • C++ primer知识点总结
  • LVS-----TUN模式配置
  • Docker-compose-知识总结
  • 基于单片机倾角测量仪/角度测量/水平仪
  • 双8无碳小车“cad【17张】三维图+设计说名书