Http请求参数带中文参数时,如{"userName":"用户名123","password":"123456"}

  请求返回:01-用户名密码错误

  明明用户名以及密码都正确,为啥会不对呢?原来有可能是服务器编码问题,服务器一般是用UTF-8编码,需要对post的json字符串进行utf-8转码后才能被服务器端识别正确。

  提供转码函数:

 ToUtf8转码参考 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
wchar_t* AnsiToUnicode(const char* lpszStr)
{
    wchar_t* lpUnicode;
    int nLen;

if (NULL == lpszStr)
        return NULL;

nLen = ::MultiByteToWideChar(CP_ACP, );
     == nLen)
        return NULL;

lpUnicode = ];
    if (NULL == lpUnicode)
        return NULL;

memset(lpUnicode, ));
    nLen = ::MultiByteToWideChar(CP_ACP, , lpUnicode, nLen);
     == nLen)
    {
        delete[]lpUnicode;
        return NULL;
    }

return lpUnicode;
}

bool UnicodeToUtf8( const wchar_t *lpszUnicode, char *lpszUtf8, int nLen )
{
    , lpszUtf8, nLen, NULL, NULL);
     == nRet) ? FALSE : TRUE;
}

bool AnsiToUtf8( const char *lpszAnsi, char *lpszUtf8, int nLen )
{
    wchar_t *lpszUnicode = AnsiToUnicode(lpszAnsi);
    if (NULL == lpszUnicode)
        return FALSE;

int nRet = UnicodeToUtf8(lpszUnicode, lpszUtf8, nLen);

delete[]lpszUnicode;

== nRet) ? FALSE : TRUE;
}

Http post请求数据带中文参数问题的更多相关文章

  1. 解决Url带中文参数乱码问题

    这里我来介绍下如何配置Tomcat 来解决Url带中文参数乱码问题: 首先打开Tomcat安装目录,以Tomcat7为例,其他版本基本一样: 打开conf文件 打开server.xml 大概在70行左 ...

  2. request接收表单提交数据及其中文参数乱码问题

    一.request接收表单提交数据: getParameter(String)方法(常用) getParameterValues(String name)方法(常用) getParameterMap( ...

  3. SpringMVC重定向路径中带中文参数

    SpringMVC重定向路径中带中文参数 springboot重定向到后端接口测试 package com.mozq.http.http_01.demo; import org.springframe ...

  4. 接口测试中读取excel中的请求数据含有中文问题,UnicodeEncodeError: 'latin-1' codec can't encode character '\u5c0f' in position

    错误信息:UnicodeEncodeError: 'latin-1' codec can't encode character '\u5c0f' in position 31: Body ('小') ...

  5. java解决Url带中文参数乱码问题

    首先打开Tomcat安装目录,打开conf文件,打开server.xml,找到这段代码: <Connector port="8080" protocol="HTTP ...

  6. ajax请求中包含中文参数

    对需要传递的中文参数先进行两次转码: 1.js文件中使用encodeURI()方法. var url = "Validate.jsp?id=" + encodeURI(encode ...

  7. linux curl http get 请求中带有中文参数或者特殊字符处理

    在使用c++去请求http服务的时候,使用的是著名的curl工具提供的类库 libcurl,但是在使用的过程中发现,如果请求的参数值带了空格或者是参数是中文,会导致响应的回调函数没有被执行,虽然cur ...

  8. 关于HTTP GET请求的url中文参数编码

    场景:前端用JS构造了一个GET请求,携带了一个中文的参数,通过Spring MVC传到后台以后解析中文是乱码. 1. 发送请求,从浏览器中捕获到http的请求内容如下: Remote Address ...

  9. LoadRunner---http请求中对中文参数的处理

    Loadrunner 做保险承保业务测试 1. 保险正常业务流程:保费计算--->保存--->申请核保--->核保--->缴费(出保单) 问题一描述 保费计算接口中,需要把车牌 ...

随机推荐

  1. Oracle 每五千条执行一次的sql语句

    今天碰到一个问题,更新历史数据时,由于数据库表数据量太大,单行更新速度很慢,要求每五千条执行一次提交进行更新.执行SQL如下: declare i_count int; i_large int; be ...

  2. C#中的 .NET 弱事件模式

    引言 你可能知道,事件处理是内存泄漏的一个常见来源,它由不再使用的对象存留产生,你也许认为它们应该已经被回收了,但不是,并有充分的理由. 在这个短文中(期望如此),我会在 .Net 框架的上下文事件处 ...

  3. Mysql修改时间的年月日,时分秒保持不变语句

    比如时间为 “2015-01-05 14:32:21” 修改为“2015-01-06 14:32:21” 修改内容为修改yyyy-mm-dd为对应的日期,时间不变. HOUR,TIME(StatusU ...

  4. 从INT 到STRING的几种方法

    1.   int sprintf( char *buffer, const char *format [, argument] ... );      <stdio.h>例如: int s ...

  5. HTML onmousedown 事件属性 关于鼠标按键的问题;

    在项目中遇到一个问题,就是点击任意键关闭弹窗的处理:出现了一个bug:就是在angularjs项目中两个controller之间的事件跳转,使用的ng-show =“iscontext” : 如所示: ...

  6. filebeat+kafka+SparkStreaming程序报错及解决办法

    // :: WARN RandomBlockReplicationPolicy: Expecting replicas with only peer/s. // :: WARN BlockManage ...

  7. Python import random报错处理办法

    [转自]http://blog.chinaunix.net/uid-26000296-id-4356738.html python安装失败:make的时候报错: /usr/include/tkDecl ...

  8. HTML5的video虽然可用controls来展示控件

    HTML5的video虽然可用controls来展示控件,并进行控制播放暂停等,但是不同的浏览器显示的效果可能不一样,所以很多时候我们需要使用Dom来进行自定义的一些操作和控制.下面是一个小例子. 当 ...

  9. 一款基于css3非常实用的鼠标悬停特效

    今天给大家带来一款基于css3非常实用的鼠标悬停特效.这款特效,当鼠标经过时候一个半透明的遮罩层倒下来.效果很好,而且是纯css3实现的,代码很少,非常实用. 效果如下: 在线预览   源码下载 实现 ...

  10. 谈谈 老罗和&quot;锤子&quot;

    老罗就不用多说了,搞科技公司的相声演员(笑).当时锤子公布会我看了直播.就是想看看在微博上吹翻了的手机究竟有多厉害.或者仅仅是一个笑话,事实上也希望国产手机可以有所突破,而不是一致的拼配置和简单的搞点 ...