【发布时间】:2019-12-24 10:54:07
【问题描述】:
第一次调用 fetch 时,一切正常。在第二次通话中,我得到了错误。它在 Chrome 中正常工作。 Polyfill fetch 已连接。
下面的代码在上传到服务器之前会转换为 ES5。 我隐藏了一些变量。
const url = `Fake url for example`;
function addData(data) {
console.log("Affiche", data);
const randomAffiche = data.data[getRandomInt(data.data)];
const date = randomAffiche.PROPERTY_DATES_VALUE.split('-')[1];
eventImgElem.src = randomAffiche.IMG;
eventTitleElem.innerHTML = randomAffiche.NAME;
eventTitleElem.href = randomAffiche.DETAIL_PAGE_URL;
eventLink.href = randomAffiche.DETAIL_PAGE_URL;
eventDate.innerHTML = getMonth(date);
eventLink.innerHTML = randomAffiche.PROPERTY_VENUE_VALUE;
whereToGoLink.href = '/kudago/';
}
function fetchData(city) {
try {
fetch(url + city) // This fetch is returned data = false. Why?
.then(data => {
data.json()
.then(data => {
console.log("fetchData", data);
addData(data);
})
})
} catch (e) {
console.log(e);
}
}
function getCity() {
const url = "fake url for example";
try {
fetch(url) // This fetch is good
.then(data => {
data.json()
.then(data => {
console.log("getCity", data)
if (data.data) {
fetchData(data.data.name);
} else {
console.log("Error getCity", data);
}
})
})
} catch (e) {
console.log(e);
}
}
getCity();
【问题讨论】:
-
您希望
city作为path还是query参数? -
@GeorgeBailey 我从第一个请求中得到了这座城市。在第二个查询中,我想使用这个城市。
-
是的,我可以看到。我只是想问一下,当您将城市与 url 连接时,这是否是一个有效的 url。您希望如何格式化 url?
url/city之类的东西?或url?city=anycity -
@GeorgeBailey 最初的变量如下所示:` const url =
/.../.../.../ajax.php?mode=class&c=...=getEvents&city=;` + city -
我不确定,但将参数传递给
url似乎存在问题。尝试用谷歌搜索类似的东西
标签: javascript internet-explorer fetch-api polyfills