我有一个本地 JSON 文件,其中包含许多对象,每个对象都与不同的邮政编码相关。我有一个输入让用户输入他们的邮政编码,然后我想从与该邮政编码相关的 JSON 文件中获取数据。我不想获取 JSON 文件的全部内容,因为它包含数十万行,所以我只想获取与用户邮政编码相关的数据。理想情况下,我想在使用 Fetch API 时将邮政编码作为参数传递,以便它只返回匹配的数据。
[
{
"Postcode": "ABC123",
"Address": "10 King Street",
...
},
{
"Postcode": "DEF456",
"Address": "20 Queen Street",
...
},
{
"Postcode": "GHI789",
"Address": "30 Prince Street",
...
}
]
有没有办法使用 Fetch 传递参数或使用查询字符串只返回匹配的数据?我只使用原生 javascript(没有 Node.js 或任何框架)
fetch
API 只是执行 http 请求的包装器。如果你使用的是一个“简单”的服务器,它只根据文件夹结构返回文件(或者在你的本地机器上打开你的 html 文件),你不能做任何类型的过滤;这种简单的服务器是愚蠢的输入/输出管道,只是通过网络复制文件。幸运的是,如果您正在构建一个实际的 Web 应用程序,您可能已经在创建某种后端服务器。
你想选择哪个服务器超出了这个问题的范围,但你要做的一般要点是:
your.app/api/zips
)get
请求your.app/api/zips?zip=90210
)如果你因为你的应用程序完全是本地的而没有使用任何服务器,我什至不会打扰; “几十万行”听起来很多,但实际上最多只有几MB,这对于本地连接来说不算什么。