Alamofire 4.0 및 Swift 3.0으로 작업 중입니다.
웹 서비스에서 현재 시간대와 함께 현재 날짜와 시간을 POST해야합니다.
콘솔에서 인쇄하려고하면 정확한 현재 시간이 표시되지만 Alamofire를 사용하여 해당 데이터를 웹 서비스에 푸시하면 날짜 및 시간이 8 시간 변경되거나 증가합니다.
이것은 내가 시도한 코드입니다. 도와 주시고 언제 그리고 왜 잘못되는지 이해하도록하십시오.
웹 서비스에 잘못된 날짜가 전송되었습니다.
let now = NSDate();
let formatter = DateFormatter();
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss zzz";
let defaultTimeZoneStr = formatter.string(from: now as Date);
print(defaultTimeZoneStr)
Alamofire.request("http:********", method: .post, parameters: ["id": 1, "date" : defaultTimeZoneStr, "value": "null", "publisher": "Jack", "title": "Time Warner, "url": "internet/6/"], encoding: JSONEncoding.default).responseString
{
response in
print("Success: \(response.result.isSuccess)")
print("Response String: \(response.result.value)")
}
그래서 콘솔, defaultTimeZoneStr 내 현재 시간이 될 것입니다. 그러나 웹 서비스에서는 8 시간 늦을 것입니다.
도와주세요.
감사합니다.
timezone이 timeString에 포함되어 있는지, (2) 서버 측에서도 파싱되어 있는지, (3) 데이터베이스에 올바른지 (4) 올바른지, 시간대가있는 데이터베이스에서 읽었는지 (5) 확인해야합니다. timezone – muescha
당신은''zzz ''->' "GMT + 1"'을 사용하지만'+0100 "''Z"'도 있습니다. – muescha
좋은 대답은 서버 측 코드와 일부 db 코드를 포함해야합니다. – muescha