苹果的发件服务器不显示乱码,iOS AFNetWorking post发送中文 服务器接受乱码问题...

今天个后台联调接口的时候 post 请求里面包含了中文, 客户端传过去中文就乱码了, 如果后台帮我们把参数转码了, 那么就没问题.如果说, 后台没有给你转码那就需要我们这边提交参数的时候自己转吗,

今天因为这个问题特意尝试很很多方法

1 专门把中文进行UTF-8编码

NSString *content = [str stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

然后在把这个传给你后台 测试结果是不行的

2 设置请求头

[manage.requestSerializer setValue:@"application/x-www-form-urlencoded; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

这样穿过去 那么你的所有参数的值就全部变成了 UTF-8的格式了, 还需要后台自动转码 这样也是不行的 这种一般是用于上传文件的 像传少一点的参数就需要用第三种方式

3 设置请求头 但是需要更换 请求头里面的内容

[manager.requestSerializer setValue:@"application/json; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

这样可以完美解决.

4 最后就是慢办法 就是在这个接口区分下 到底是 iOS 传过去的还是 Android 穿过去的 然后后台在进行对应的处理 也是可以解决的, 哈哈哈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值