休息服务中基于文件的搜索的最佳实践

时间:2013-05-28 14:43:31

标签: rest http-method

我正在帮助为文件构建相似性搜索服务。搜索内容的一种方法是使用GET请求,通过提供文件的URL,但我还需要允许客户端直接发送文件。我必须遵循以下选项:

  1. 让客户端发送带有有效负载的GET请求;似乎不建议这样做 - HTTP GET with request body

  2. 使用除GET之外的其他内容(可能是PUT?)进行基于文件的搜索。问题是其他HTTP方法似乎都不适合这个目的。

  3. 哪种选择最适合这里?我不是这个领域的专家,我无法弄清楚在这种情况下做什么是正确的。

2 个答案:

答案 0 :(得分:1)

以下是我一直遵循REST的规则。

GET - 仅查询数据并返回数据集。 POST - 在数据库中创建数据 PUT - 修改数据 DELETE - 销毁数据库中的数据。

如果要为搜索参数发送有效负载,则可以执行GET并将这些参数(假设它们是名称/值对)放在URI的查询字符串中。

即。 http://my.simsearch.com?param1=first&param2=second ......

如果您确实要更改数据库,则按顺序执行POST或PUT。

我希望这会有所帮助。

答案 1 :(得分:0)

我最终通过GET请求发送了有效负载。虽然不是真的推荐,但希望没有图书馆会抱怨这个。