我有一个运行有REST @POST端点的Java应用程序,该应用程序执行SQL查询,并以CSV格式返回结果。
端点正常工作,我可以通过Curl和Postman获得正确的结果。
现在,我正在尝试通过javascript调用此终结点,并使用响应更新HTML值。但是没有js经验。
这是我正在使用的代码:
<!DOCTYPE html>
<html>
<body>
<h1>Making A POST</h1>
<p id="demo">Change this text.</p>
<button type="button" onclick="loadDoc()">Change Content</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
function loadDoc() {
$.post("http://localhost:4567/query/sql/csv",
"SELECT * FROM testTable",
function(data,status){
document.getElementById("demo").innerHTML = $result;
});
}
</script>
</body>
</html>
它已成功发出POST请求,可以从应用程序控制台中看到。但这并没有通过响应更改HTML元素:
<p id="demo">Change this text.</p>
答案 0 :(得分:1)
如我所见,您正在使用一个未定义的var:$result
我认为您想改用data
。
像这样:document.getElementById("demo").innerHTML = data;
答案 1 :(得分:0)
代码有效。 问题是Chrome和Internet Explorer阻止了脚本。