文档章节

通过AFNetworking获取服务器时间

yoyoso
 yoyoso
发布于 2015/05/27 18:08
字数 277
阅读 2145
收藏 4

在一些场合,我们需要获取服务器的时间,计算该时间与客户端本地时间的差值,以利于时间同步。有人说,这个不是很简单吗,让后台的TX给你一个获取服务器时间的接口就行了。

其实这个还是比较麻烦的,更简单的是利用HTTP Header来获取服务器时间——每个HTTP header的Date参数就是这个时间。在iOS中我们通常用AFNetworking发请求,那么用AFNetworking怎么得到HTTP header信息呢?

很简单,用 [[operation response] allHeaderFields]   就行。

后记:

我还是想得太简单了,在iOS中想把上图中HTTP头的时间换成NSDate,怎么试都不行,后来才发现,虽然你可能指定时间为"EEE, d MMM yyyy HH:mm:ss zzz",但还需要额外的设置。

最后,找到了一份开源的代码解决了此问题:https://github.com/mwaterfall/MWFeedParser/blob/master/Classes/NSDate+InternetDateTime.m(ARC) 

使用方法:

NSDate* inputDate = [NSDate dateFromInternetDateTimeString:dateServer formatHint:DateFormatHintRFC822];

或者:

NSDate* inputDate = [NSDate dateFromRFC822String:dateServer];


参考:http://stackoverflow.com/questions/12351464/reading-afnetworking-response-headers

© 著作权归作者所有

yoyoso
粉丝 49
博文 135
码字总数 47575
作品 0
南京
高级程序员
私信 提问
OC使用AFNetWorking框架GET方法上传参数格式不是JSON串

iOS的APP端使用AFNetWorking这个框架连接服务器, 项目约定使用GET方法传参, 现在遇到问题是:iOS传的参数要组合成“字典”放入AFNetWorking,然后用AFNetWorking开始请求, 而AFNetWorking会...

Moses_Fu
2015/10/26
1K
0
关于ios应用引入AFNetworking后编译报错的问题

/Users/rzz/Desktop/iphone-app/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.h:29:1: error: unknown type name 'NS_ASSUME_NONNULL_BEGIN' NS_ASSUME_NONNULL_BEGIN ^ /User......

骑毛驴的王子
2015/11/09
1K
0
iOS下的Http库AFNetworking

在iOS下开发一直是用ASIHTTPRequest库,ASIHTTPRequest已经停止更新,看了这个文章http://www.oschina.net/news/61416/github-top-100-objective-c-projects (原文https://github.com/Aufr......

vane_
2015/04/11
188
0
AFNetworking源码浅析

本文将从最简单的GET请求方法的使用入手,由表及里,逐步探究AFNetworking如何封装处理原生的网络请求。 一、AFNetworking的简单使用 Post、Put、Delete 与此Get类似 二、AFNetworking如何封...

鸿鹄当高远
2018/12/12
0
0
AFNetWorking用法及缓存处理

AFNetWorking 在IOS开发中是一个经常会用的第三方开源库,其最好处是维护及时,源码开源。 常用GET与POST请求方法: POST请求: GET请求: 这里有一个地方需要注意, 这个类方法我们点进源码...

珲少
2015/04/02
672
3

没有更多内容

加载失败,请刷新页面

加载更多

《JAVA核心知识》学习笔记 (19. 数据库)

19.1.1. 存储引擎 19.1.1.1. 概念 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、 更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧...

Shingfi
23分钟前
3
0
三分钟手操自己的yum源

本文章原创首发公众号:编程三分钟 上次就想手操yum源了,考虑到有的朋友没接触过,直接写成了yum源的科普,活活憋了我一个星期,现在我们快快开始。 什么情况下我们需要搭建一个仓库呢? 记...

编程三分钟
27分钟前
4
0
一起来学Java8(二)——Lambda表达式

Lambda简介 什么是Lambda表达式,简单的说是一种匿名函数表达方式。因此Lambda表达式本质是个函数,只不过没有函数名称。 Lambda表达式具有以下特点: 匿名,它没有函数名称 本质是个函数,除...

猿敲月下码
29分钟前
4
0
排序算法之希尔排序

1、介绍。 希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D...

daxiongdi
37分钟前
3
0
log4j2入门hello world

1.什么是log4j2 (1)log4j log4j是apache的一个开源项目,表示log for java.是一个日志工具,可以将日志信息输出到文件,控制台等其他地方 ,还可以定义日志的输出格式,另外还有日志级别的区分,可...

Blueeeeeee
39分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部