我是靠谱客的博主 彪壮黑米,最近开发中收集的这篇文章主要介绍如何解决Http请求参数中加号变空格问题问题描述:举例说明:错误原因:简单的解决方法:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

问题描述:

当使用.NET编写Winform程序,构建Http Post 请求,并传递若干参数给远程服务器时,如果参数中包含加号'+'等符号时,http请求发送后,服务器收到并解析时,加号会被解码为空格。

举例说明:

若参数中含有:fileName = "[宫崎骏作品全集+Ghibli相关作品].txt"
此时,传递到服务器上以后,服务器接收到的数据会变成:[宫崎骏作品全集 Ghibli相关作品].txt

加号会变成空格!
(如果全程都使用的utf-8编码格式)

错误原因:

我没有深究原因,宽泛的说,就是在传输前后过程中,经历的几次编码和解码标准不同,导致加号、空格等字符的错误。

简单的解决方法:

遇到这种情况时,一种快速的解决方法是: 把参数中所有的加号“+”,替换为“%2B”即可
(可能这种方法并不好,应该可以采用传递前对数据进行某格式的encode,获取数据时进行decode即可)

最后

以上就是彪壮黑米为你收集整理的如何解决Http请求参数中加号变空格问题问题描述:举例说明:错误原因:简单的解决方法:的全部内容,希望文章能够帮你解决如何解决Http请求参数中加号变空格问题问题描述:举例说明:错误原因:简单的解决方法:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部