【发布时间】:2011-09-17 01:09:43
【问题描述】:
好的。我们的应用程序发送一个NSString,该NSString 由当前用户的用户名和格式为yyyyMMddHH 的今天日期组成。我们位于瑞典的服务器发出完全相同的String,并在接到呼叫时比较两者。
现在。我们已经意识到,如果我们的一位用户出国,时区将会改变,从而导致复杂性。
如果 iPhone 用户在韩国首尔。他发送的NSString 类似于:
2011061718
同时,当我们的服务器收到调用时,它会以这种格式重新创建自己的日期字符串,因为它位于瑞典。
2011061711
因此拒绝用户访问服务器端的功能。
总结一下:
如何以编程方式在我的应用程序中设置默认静态时区?
我们这样做:
NSDate *aDate = [aDateFormatter stringFromDate:[NSDate date]];
不知何故,我们需要时区并比较用户实际时区之间的差异并将其更改为瑞典时区。
有什么想法吗?
编辑:好的。此应用程序仅打算在瑞典发布。我们使用用户的用户名和当前日期(格式为 yyyyMMddHH)的组合来制作安全密钥,该密钥旨在在新的小时开始时自行更新。该服务器位于瑞典 GMT+1 时区,验证用户是在使用应用程序的实际设备上,而不是让自己的客户对我们的服务进行肥皂调用的人。
因此,如果我们的用户之一超出时区,它将拒绝该用户,因为字符串不匹配。
这就是为什么我们要始终为该函数设置默认时区 GMT+1。这就是我们真正想要的。
谢谢。再次。
【问题讨论】:
-
最后一行 - 你从一个日期得到一个字符串并将它存储在一个日期中?
-
瑞典不在 GMT+1 时区。它在冬天使用 GMT+1,在夏天使用 GMT+2。
标签: iphone objective-c ios timezone nsdate