最近在做通过http请求实现后端一条一条一条消息推送,达到gpt那种搜索的展示的效果
客户端这边设置很简单,只需要设置请求头
[request addValue:@"text/event-stream" forHTTPHeaderField:@"Accept"];
项目网络库用的AFN,经调研发现AFN不支持这个请求,最后选择了系统的
NSURLSession来做,这个需要服务端已经配置好了相关域名,否则当作是普通的http请求一次性获取所有结果
第一大坑:回调每次不一定都是一条完整的数据,安卓端和PC都没这个问题,他们获得数据每次都是完整的一条数据,我们需要特殊处理
[self.mutableTotalData appendData:data];
然后再一条一条取
第二大坑:字符串截取后由于转义字符的问题,无法正常json解析
标签:一条,请求,stream,text,iOS,推送,event From: https://www.cnblogs.com/lindon/p/18136697