我正在用 ajax 呼叫我的資料庫以獲取一些資料。我嘗試將其限制為特定的 ID。我讓后端作業。當我訪問特定的 localhost url 或從 Postman 呼叫它時,它會起作用。然后我得到期望值。但是,當我嘗試使用 AJAX 從我的客戶撥打電話時,我根本沒有收到任何資訊。我遇到了有時它會起作用有時不起作用的事情。
const GetUserById = (id) => {
let url = "/Users/1";
$.get(url, (gotUser) => {
alert(gotUser.id);
})
}
我有這個方法,我只是硬編碼到 /Users/1 進行測驗。當我在郵遞員中呼叫它或轉到 localhost:8080/Users/1 時,我得到了我期望的東西。然而,在這里它根本沒有去任何地方。
app.get("/Users/:id", (request, response) => {
let sqlCode = "select Id, Username, [Password], Credits from Users Where Id = " request.params.id;
sql.query(connString, sqlCode, (error, result) => {
if (error) {
console.log(error);
}
else {
response.json(result);
}
});
});
服務器端,如果這很有趣。
編輯:添加了這樣的嘗試捕獲。它甚至沒有達到目標。它到達 $.get(url, (gotUser) => { 行,然后它到達函式的末尾并且沒有得到任何東西。
try {
$.get(url, (gotUser) => {
alert(gotUser.id);
})
} catch (error) {
console.log(error);
}
uj5u.com熱心網友回復:
處理 ajax 請求的一個典型問題是 CORS。在您的情況下,對此的快速解決方法是在回應標頭中指定允許來源,如下所示:
response.header("Access-Control-Allow-Origin", "*");
response.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
以更一般的方式,您可能需要在應用程式級別指定它,或者使用任何包來處理它(cors)。
編輯 - -
app.get("/Users/:id", (request, response) => {
response.header("Access-Control-Allow-Origin", "*");
response.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
let sqlCode = "select Id, Username, [Password], Credits from Users Where Id = " request.params.id;
sql.query(connString, sqlCode, (error, result) => {
if (error) {
console.log(error);
}
else {
response.json(result);
}
});
});
uj5u.com熱心網友回復:
如果是 cors 問題,請嘗試按照以下方式進行操作
var cors = require('cors');
app.get("/Users/:id",cors(), (request, response) => {
let sqlCode = "select Id, Username, [Password], Credits from Users Where Id = " request.params.id;
sql.query(connString, sqlCode, (error, result) => {
if (error) {
console.log(error);
}
else {
response.json(result);
}
});
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/386018.html
標籤:javascript 查询 节点.js 阿贾克斯 表达
上一篇:使用一個函式處理多個Ajax請求——在頁面加載時回傳相同的結果
下一篇:我如何從Ajax的物件中獲取值
