2011-11-02 9 views
1

나는 suds가있는 웹 서비스를 사용하려고하지만 여기 누군가가 나를 도울 수 있기를 바랍니다.거품이 순진한 날짜 시간을 사용하도록합니다.

기본적으로 우리가 사용하는 특정 메서드는 dateTime 개체를 전달하여 서비스를 중지 할 날짜가 필요하다는 문제가 있습니다. 문제는 suds가 -4 시간대 (해당 시간대의 올바른 표준 시간대)를 요구한다는 것입니다. 컴퓨터에서 스크립트가 호스팅되는 위치)에서 결과 문자열의 끝에 있지만, 우리의 공급자가 이것을 잘못 해석하여 날짜가 하루 일찍 벗어나는 것으로 보입니다.

우리는 PHP에서 순진한 "dateTime"객체 (기본적으로 "YYYY-mm-dd HH : mm : ss"와 같은 문자열)를 전달하기 전에이 웹 서비스를 시도했지만 정상적으로 작동하므로 시간대가 어떤 원인인지 알 수 있습니다 문제.

그래서 진짜 질문은, 어떻게 순진한 dateTime 객체를 사용하거나 다른 시간대 (서버가 UTC 시간대로 구성되어 있고 이것이 문제의 원인인지 의심되는)를 사용하도록 할 수 있습니다.

덕분에 모든 당신의 도움

답변

1

나는 이것으로 어려움을 겪었다. Lib \ site-packages \ suds \ sax \ date.py를 297 행에서 편집했습니다. self .__ adjust()를 주석 처리했으며 현재 시간대를 기준으로 시간을 조정하지 않습니다.

if isinstance(date, basestring): 
     part = date.split('T') 
     Date.__init__(self, part[0]) 
     Time.__init__(self, part[1], 0) 
     self.datetime = \ 
      dt.datetime.combine(self.date, self.time) 
     # self.__adjust() 
     return 
    raise ValueError, type(date) 

내가지고 있다고 "2013-04-16T23 : 00 : 00"지금은 올바른 값 얻고있다 "2013-04-17T00 : 00 : 00".

관련 문제