下面记录一下数据请求问题:

1.不知道大家有木有遇到过,当数据请求的URL带有汉字的时候,请求数据肯定会报404错误,也就是参数或者是接口URL错误<虽然说404,500等错误一般都是服务器问题,可是......想说的是:大部分使我们请求参数或者URL问题哟!!! >

这时候你就要检查自己的请求参数和地址是不是有错哟!

2.当数据请求中带有汉字的时候,一般是要转成UTF8编码,才能进行数据请求的.

     NSString *searchStr1 = [searchStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

有些数据可能转一次就够了,有些....可就不一定了哈....

请往下看哟.....

3.安卓好像都是一次转码就好了...只是...iOS貌似不行的呢...嘻嘻!!!

总之我是试了很多次都不行,一直报404错误....经过多次尝试,总算是找到怎么解决这一问题了...

解决方法就是: 进行两次UTF8转码

看以下我的代码实现: 输入中文进行搜索请求数据.

 #pragma mark - UISearchDelegate

 - (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{

     self.searchBar.showsCancelButton = NO;
[searchBar resignFirstResponder];
//请求搜索数据
NSString *searchStr = [searchBar.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *searchStr1 = [searchStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
self.searchText = searchStr1; // 注意要两次转码才成功!!!
[self requestStudentList:searchStr1];
}

iOS服务器数据请求"汉字编码"问题的更多相关文章

  1. iOS之数据请求NSURLConnection

    iOS之数据请求NSURLConnection NSString *lcsUrl = @"http://192.168.1.1:8080/lcsUrl"; //假设网址中有汉字.须 ...

  2. ios第三方数据请求 UI_15

    AppDelegate.m //指定根视图 self.window.rootViewController = [[[UINavigationController alloc]initWithRootV ...

  3. nuxt 利用lru-cache 做服务器数据请求缓存

    // 运行与服务端的js // node.js lru-cache import LRU from 'lru-cache' const lruCache = LRU({ // 缓存队列长度 max: ...

  4. iOS - NetRequest 网络数据请求

    1.网络请求 1.1 网络通讯三要素 1.IP 地址(主机名): 网络中设备的唯一标示.不易记忆,可以用主机名(域名). 1) IP V4: 0~255.0~255.0~255.0~255 ,共有 2 ...

  5. iOS中GET 和 POST 数据请求

    iOS中GET 和 POST 网络数据请求 同步请求和异步请求的差别: 1.同步请求,有主线程完成网路请求任务,在数据没有请求之前,用户的所有的交互事件应用都无法处理,会造成一种卡顿现象,影响用户体验 ...

  6. 关于纯xmlhttprequest请求服务器数据

    今天我们的web技术已经相当的完善, 各种前端框架如jquery或者再深一点的工具APIcloud 的使用极大的方便了我们的开发工作. 今天我要分享一个纯javascript的方式来解决请求服务器数据 ...

  7. iOS开发——网络Swift篇&NSURL进行数据请求(POST与GET)

    NSURL进行数据请求(POST与GET)   使用Swift进行iOS开发时,不可避免的要进行远程的数据获取和提交. 其数据请求的方式既可能是POST也可能是GET.同不管是POST还是GET又可以 ...

  8. iOS学习之数据请求

    GET请求----同步连接 //GET请求 同步连接 - (void)handleSynchronize:(UIBarButtonItem *)item { //GET请求 //1.创建网址字符串; ...

  9. 前端笔记之服务器&Ajax(下)数据请求&解决跨域&三级联动&session&堆栈

    一.请求后端的JSON数据 JSON是前后端通信的交互格式,JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. JSON是互联网各个后台与 ...

随机推荐

  1. QTP(12)

    练习:录制两位数加法器加法计算后退出的步骤,对两个加数做随机数参数化,随机数范围是0-50,在计算后获得被测系统计算的结果,判断如果结果等于100,msgbox提示“满分”,如果结果在80和99之间, ...

  2. 王道机试指南题解(C/C++版)

    第 2 章 经典入门 一 排序 例 2.1 排序 代码 2.1 冒泡排序(时间复杂度 \(O(n^2)\)) #include <iostream> using std::cin; usi ...

  3. timestamp和datetime

    datetime数据类型在MySQL之前占8个字节,5.6之后占5个字节,datetime的范围1000-01-01 00:00:00------9999-12-31 23:59:59,格式采用YYY ...

  4. Eclipse里Maven配置

    简单记录一下,太特么困了,这几天天天加班很晚来着 : 选中.Apply and Close. 完成. 日他得,腰都快加断了……:) ---------------------------------- ...

  5. Liquibase使用(转)

    文章目录 介绍快速使用Springboot中引入依赖配置日志文件ChangeLog编写变更记录ChangeSetMaven中引入依赖配置liquibase.properties编写变更记录Change ...

  6. 【CUDA 基础】2.4 设备信息

    title: [CUDA 基础]2.4 设备信息 categories: CUDA Freshman tags: CUDA Device Information toc: true date: 201 ...

  7. SpringMVC——MVC执行流程底层剖析

    SpringMVC流程图如上面所示,根据上图,串联一下底层源码: 1.在DispatcherServlet中找到doDisPatch 2.观察方法体,然后找到getHandler方法 3.点进方法,发 ...

  8. 震惊!文科生如何三个月转行成为Java工程师?

    点击上方“程序员江湖”,选择“置顶或者星标” 你关注的就是我关心的! 作者:以大橘为重链接:https://www.nowcoder.com/discuss/156087 楼主是19届应届生,去年在牛 ...

  9. flask第三篇 request

    每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前后端的交互 基于HTML + Flask 写一 ...

  10. SRS之SrsRtmpServer::connect_app详解

    1. connect('live') 2. SrsRtmpServer::connect_app 位于 srs_rtmp_stack.cpp.在 SRS 的 RTMP 连接处理线程 conn 中,当与 ...