2013-06-02 111 views
0

我對wcf休息的幾件事感到困惑。問題wcf與webclient的休息服務

  1. 如果您調用登錄方法,我應該使用POST還是GET?實施POST後,我開始發現各種文章,說你應該只使用post來更新數據,然後獲取數據。哪種方法最合適?

如果我必須將登錄方法從Post改爲Get,我該如何調用它?

http://....myservice.svc/login/ {用戶名}/{passpord}還是有另一種方式來調用它?

請注意,在我的post方法中,我以json格式傳遞和返回數據。

  1. 我需要創建一個搜索函數,需要傳遞各種參數,即列表,字符串,列表等......我假設在這種情況下,我將不得不定義GET方法,但又是如何傳遞這些對象列表?先將它們轉換爲json並將它們作爲參數傳遞?

一個簡單的URL樣本將是偉大的。

回答

0

好吧,我想我會回答自己的問題,根據進一步調查研究時發現,並記住我的答案是基於使用JSON作爲參數。我不確定如果xml被使用,它會如何表現,因爲我沒有嘗試它。

  1. 由於您不想顯示您通過網址發佈的信息,因此在登錄時使用POST似乎更有意義。您可以使用GET方法對數據進行加密並將其傳遞到網址中......我又可能錯了,但這就是我解讀我閱讀的各種文章的方式。

  2. 同樣,在這種情況下,如果a)您需要將大量數據傳遞到您的url並且b)如果您不想向用戶顯示此數據,則顯示POST是最佳解決方案。如果您的查詢只需要簡單的參數(即userid,type等),並且您不介意顯示此信息,則可以使用GET方法。

如果您需要將多個參數傳遞給函數,則應該傳遞一個參數。該參數應該是單個對象。這個對象應該由你希望首先使用的所有參數組成,這樣,當使用POST方法時,這個對象可以很容易地轉換成JSON,它將處理通過一個對象傳遞多個參數,它將處理數字,字符串,列表<>,數組<>等...非常好。