2017-01-05 18 views
0

,你经常会看到这样的事情在动态构建SQL查询:绝招时动态附加获取属性

WHEN 1=1 AND title="Example" AND ... 

1 = 1的目的是为了能够保持追加和语句,而无需检查任何以前的陈述存在。从而避免这样的事情发生:

WHEN AND title="Example" AND ... 

我经常建立的属性/搜索查询的GET请求时遇到一个相关的问题。我不想继续检查,如果我需要在前面加上属性“?”或 '&'。

所以我的问题是,有没有“安全”的办法,我补充一点,不会在服务器端的任何潜在干扰软件的初始属性。假设我不完全了解后端。 类似于:

http://example.com?1=1&title=example 
http://example.com?null&title=example 
http://example.com?i-am-useless&title=example 

或者这是允许的吗?

http://example.com?&title=example 

是否有更简单的方法来解决这个问题?

回答

0

确保您要添加参数的URI字符串已经以'?'结尾。然后为每一个键 - 值对中,添加“键=值&”到它。您也可以选择那么到底删除生成的字符串的最后一个字符。 - reddit的用户omepiet