JavaScript:如何从同一个URL "refresh"数据?



拥有此API: http://quotesondesign.com/wp-json/posts?filter[orderby]=rand&filter[posts_per_page]=1

如何使用纯 JS 请求编写,该请求在按钮单击事件后下载不同的数据?

我从这段代码中得到的只是相同的报价:

function getQuote (cb) {
var xmlhttp = new XMLHttpRequest();
var quoteURL = "http://quotesondesign.com/wp-json/posts?filter[orderby]=rand"
xmlhttp.onreadystatechange = function() {
if (xmlhttp.status == 200 && this.readyState==4) {
cb(this.responseText);
} 
};
xmlhttp.open("GET", quoteURL, true);
xmlhttp.send();
}
document.querySelector('button').addEventListener("click", function() {
getQuote(function(quote) {
console.log(quote);
});
})

我尝试了xmlhttp.abort((和其他东西,但它不想合作。 提前感谢!

您的响应正在被浏览器缓存。 避免这种情况的常见技巧是执行请求

http://quotesondesign.com/wp-json/posts?filter[orderby]=rand&filter[posts_per_page]=1&r={random_number}

请注意 r={random_number} 每次都会使 URL 不同。

这是一个缓存问题。添加时间戳作为查询参数,您应该能够破坏缓存。

最新更新