当前位置:  开发笔记 > 后端 > 正文

用于多种排序的URL查询字符串约定

如何解决《用于多种排序的URL查询字符串约定》经验,为你挑选了2个好方法。

我有一个RESTful Web应用程序,它支持一组项目上的多个排序字段.是否有将这些排序字段编码到URL的查询字符串中的通用约定?我正在考虑如下模式:

http://myapp.com/books?sort=author:asc,datepublished:desc&count=12 

这将按作者排序书籍集合,然后按发布日期排序.

基本上,我需要一种方便的方法,使我的查询字符串中的名称 - 值对具有自己的名称 - 值对.我也需要为上面的例子做一些与过滤器参数类似的事情.

Rails或ASP.NET MVC有这样的模式吗?是否有其他框架已经建立了处理此问题的方法?我宁愿使用熟悉的格式而不是自己的格式.

我也更喜欢使用尽可能少的URL百分比编码的格式.



1> bendewey..:

我在使用标准SQL排序语法之前已经完成了这个.有许多解析功能和技术.

http://myapp.com/books?sort=author asc,datepublished desc&count=12

将被编码为

http://myapp.com/books?sort=author+asc,datepublished+desc&count=12


如果直接使用这些值,那么SQL注入就会有一个很好的安全漏洞.我警告你 ;)

2> 小智..:

对于REST,我更喜欢更直观的语法:

http://myapp.com/books?sort=+author,-datepublished&count=12

更详细(没有'+'符号):

http://myapp.com/books?sort=author,-datepublished&count=12

容易记住...

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有