为什么使用空字符串作为搜索参数来发出get请求会导致返回随机数据而不是无数据



我正在发出获取请求,我想知道在没有提供搜索输入的情况下,我仍然得到带有随机数据的响应是否正常?向pixabay发出获取请求:

var API_KEY = '10677334-f0f7afbe90e1a76e6ab8380d7';
var URL = "https://pixabay.com/api/?key="+API_KEY+"&q="+encodeURIComponent('red roses'); //returns data as expected
var URL = "https://pixabay.com/api/?key="+API_KEY+"&q="+encodeURIComponent(''); //returns random data

我检查了网络,在空字符串参数的情况下,我得到了空字符串的q=%20。如果我做了JSON.stringify,它会以某种方式工作(=没有得到结果(,但我的空字符串变成了

q=%22%22 which does not seem right

有人能帮我解释一下,我是否真的需要为这种情况做点什么,或者我做了一些完全错误的事情(似乎因为strigifying等似乎不是一个典型的解决方案(/应该不q=(在空字符串的情况下不提供任何内容实际上导致不给我任何数据?

非常感谢!!

这可能是API开发人员有意识的决定。

关于这个问题的答案,最好参考pixabay.com API指南。

注意,关于"q"参数:

一个URL编码的搜索词如果忽略,则返回所有图像

最新更新