【发布时间】:2021-07-02 11:55:53
【问题描述】:
我正在尝试使用来自具有玩家名字和姓氏的表单的输入从获取请求中获取值。返回 json 的总大小为 0,但是当我对名称的值进行硬编码时,我确实得到了正确的信息。我尝试了很多不同的方式切换获取请求,但我无法得到我正在寻找的响应。
API 文档说:
如果您使用单个搜索词,即使用“cespedes”而不是“yoenis cespedes”,则需要在搜索词后附加一个“%25”字符。没有它,请求将返回 500。
<body>
<div>
<form action="">
<label for="fname">First name:</label><br />
<input type="text" id="fname" name="fname" value="" /><br />
<label for="lname">Last name:</label><br />
<input type="text" id="lname" name="lname" value="" /><br /><br />
<input type="submit" value="Submit" />
</form>
</div>
<script>
fetch(
'http://lookup-service-prod.mlb.com/json/named.search_player_all.bam?sport_code=%27mlb%27&active_sw=%27Y%27&name_part=%27' +
'fname' +
'_' +
'lname' +
'%27'
)
.then(function test(res) {
return res.json();
})
.then(function test1(data) {
console.log('data', data);
});
</script>
</body>
当我使用包含名称的提取时,它会返回正确的 json。
http://lookup-service-prod.mlb.com/json/named.search_player_all.bam?sport_code=%27mlb%27&active_sw=%27Y%27&name_part=%27francisco_lindor%25%27
【问题讨论】:
标签: javascript html fetch-api