Web Service 呼叫日期出現偏差的原因

2021-04-12 23:51:52 字數 847 閱讀 3660

最近使用.net 的web service實現了一些**,但是在客戶機器上面執行的過程中,發現系統提交的日期總是

比真是的日期少了12個小時,在開發環境中測試沒有任何問題。

例如:北京時間2023年4月28日9點35分,寫入到資料庫之後,則變成了2023年4月27日21點35分。

首先,聯想到使用delphi連線web service曾經產生的類似問題,是不是web service協議呼叫的時候,需要特

別的指出時間和gmt時間的差距呢?本身這個問題在以前的呼叫中就沒有發生過,所以可能性幾乎沒有。那會不

會是web.config的配置改變了系統的預設引數呢?檢視web service的web.config檔案,發現request和

response的編碼都是utf-8,這個也不存在問題,和我們自己的開發歡迎是一致的。

會不會是客戶的那台機器出現了問題呢?比如說他自己機器的時間配置出現了問題?檢視了客戶機的設定,沒

有發現什麼異常,都是windows預設的設定值。找了另外一台伺服器來測試,配置也是預設值,寫入進去的資料

也是錯誤的。這樣就可以認為是伺服器的設定問題了。

開啟伺服器的時間設定,看到的時間看上去是正常的,開啟「時區」選項卡,發現使用的是gmt-5,美國東部時

間,哈哈,問題就在這裡,修改為gmt+8,再看一下windows工作列的時間,變成了和現在相差12個小時的凌晨4

點,重新修改為正確的時間,問題解決。

看來很多事情都是有解決簡單辦法,另外乙個方面,伺服器的管理非常重要,平時我們自己使用的pc機時間錯

了也無所謂,但是這個伺服器裡面儲存了資料,資料將會發生錯誤。

ps: 和同事出差,他睡覺在打呼嚕,俺自己誰不著,只有上網來溜達一會。

動態呼叫WebService

public static object invokewebservice string url,string methodname,object args 其中,url是web服務的位址,methodname是要呼叫服務方法名,args是要呼叫web服務所需的引數,返回值就是web服務返回的結果了...

呼叫WebService出錯

呼叫乙個遠端webservice編譯出錯 錯誤2 型別 system.web.services.protocols.soaphttpclientprotocol 在未被引用的程式集中定義。必須新增對程式集 system.web.services,version 2.0.0.0,culture neu...

webservice建立呼叫

在乙個分布式應用上面用到了webservice,記錄一下。1 建立web專案 xfire 2 編寫介面以及實現類 3 在web info下面新建meta inf資料夾,新建services.xml。內容如下 名稱介面全稱 介面實現 4 編輯web.xml對service攔截 6 客戶端呼叫,這裡面就...