我希望我能在代码中找到一些帮助。
我在mySQL上设置了一个数据库,并将其连接到Django REST。这些都按预期工作,我可以使用Firefox REST Client访问REST,并从数据库中返回正确的表。
我已经开始使用 html 和 javascript 进行用户界面工作,我遇到了一个我无法解决的问题。我是学生,这是我学校工作的一部分,但不幸的是,由于暑假,我的老师暂时无法使用,我渴望继续我的项目。因此,我向你寻求帮助。
由于我通过Firefox REST Client测试了Django REST,我确信数据库和REST服务没有错,所以我们来到我的代码。
我似乎能够连接到REST服务,给我代码200和状态4(图片链接在下面)
ReadyStateChange + ReadyState console.logs
图2显示我的GET请求卡在OPTIONS上,而不是执行正确的请求。
但是我无法提取数据,给我'Content-Length:0'。
最初我认为问题是跨域请求问题,直到我的同学说他不认为是,但他也无法为我的代码找到解决方案。
我正在努力找到这个错误的原因和解决方法,如果你们确实知道为什么会发生这种情况,我会非常感谢你的帮助!
这是我的代码:
<div id="demo"></div>
<script>
loadData() //function kutsu
function loadData(){
if (window.XMLHttpRequest) {
// code for modern browsers
xmlhttp = new XMLHttpRequest();
} else {
// code for old IE browsers
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
var url = "http://127.0.0.1:8000/vamkrs/";
xmlhttp.open("GET", url, true);
xmlhttp.withCredentials = true;
xmlhttp.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
xmlhttp.send();
setTimeout(xmlhttp.onreadystatechange = function() {
console.log(this.status);
console.log(this.readyState);
if (this.readyState == 4 && this.status == 200) {
var myData = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myData.responseText(); }
},1500);
/*
xmlhttp.onreadystatechange = function(){
console.log(this.status);
if (this.readyState == 4 && this.status == 200) {
var myData = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myData.responseText();}
}; */
}
</script>
聚苯乙烯。对不起,英语不是我的母语,因此可能会出现一些拼写错误
PSS的。第一次在这里发帖,如果在帖子
上犯了错误,我道歉