2013-06-02 86 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,它将处理通过一个对象传递多个参数,它将处理数字,字符串,列表<>,数组<>等...非常好。