关于wcf:RESTful – 我什么时候应该使用POST和GET?

RESTful - when should I use POST and GET?

这是我的WCF服务,用户可以在其中找到消息。
简单:

1
2
3
    [OperationContract]
    [WebGet(UriTemplate ="/GetMessages/{UserGLKNumber}/{UserPassword}/{SessionToken}")]
    Messages GetMessages(string SessionToken, string UserPassword, string UserGLKNumber);

我担心这一行:{UserGLKNumber}/{UserPassword}/{SessionToken}

在收到消息之前,我必须对用户进行身份验证。 但是使用GET方法,我无法发送对象,例如POST

它与REST模式一致吗?

请澄清我的疑虑。


在Restful服务方面......

发布:
1.它可以安全地用于应用而非获得
2.它不配置代理服务器
3. Web服务器限制的大量数据
它没有缓存在浏览器上
5.输入为xml

得到:
1.它不适合在应用中使用而不是获得
2.配置代理服务器
3.使用url编码技术
它缓存在浏览器上
如果你没有宣布任何人,这是违约
6它将输入作为字符串返回格式化输出


已有帖子&关于这一点的问题,我总结了所有这些

  • 在创建新资源(在您的情况下为文件)时使用POST谓词,并且重复操作将在服务器上创建多个资源。如果多次上传具有相同名称的文件在服务器上创建多个文件,则此动词将有意义。

    当您更新现有资源或创建具有预定义ID的新资源时,将使用PUT谓词。多个操作将重新创建或更新服务器上的相同资源。如果为第二个,第三个...时间上传一个具有相同名称的文件将覆盖以前上传的文件,则此动词将有意义。

  • 每次修改服务器上的某些状态时都要POST,如数据库更新,删除。 GET用于只读取数据库选择。

  • 获取:获取条目集合(作为订阅源文档)或单个条目(作为条目文档)。

    POST:从条目文档创建新条目。

    PUT:使用输入文档更新现有条目。

    删除:删除条目。

  • 来源:使用WCF REST的PUT和POST之间的差异

    另一个有用的读物??是:

    POST和PUT HTTP REQUEST有什么区别?

    http://www.codeproject.com/Articles/105273/Create-RESTful-WCF-Service-API-Step-By-Step-Guide

    http://msdn.microsoft.com/en-us/magazine/dd315413.aspx

    http://social.msdn.microsoft.com/Forums/vstudio/en-US/643e0d8b-80bb-45eb-8a84-318ac8de4497/difference-between-the-rest-verbs-put-and-post?forum=wcf