如题:delphi idhttp.get 发送一个带有中文用户名的 网址,通过抓包工具发现会出现乱码问题
原因:
网址使用URL编码(%XX格式)非ASCII的字符
解决方法:
相关介绍可以参考这里:
既然你使用了idhttp来发送请求, 那么可以使用tidurl来进行url转换, 代码如下:
uses
idURI;
...
IdHTTP1.Get(TIdURI.URLEncode('你的URL'));
另加 TIdHttp 的一个用法问题
如果服务器不接收json类型 则不能采用 http.Request.ContentType := 'application/json'这种方式
应采用如下代码:
l_IdHttp.Request.ContentType := 'application/x-www-form-urlencoded';