![](/img/trans.png)
[英]Fetch response db.json is one object instead an array of objects
[英]make POST request to db.json with multiple attributes inside object
我有以下代碼:
function createObject(){
let object = {
product1 : "Apple",
product2 : "Banana",
product3 : "Cucumber",
product4 : "Duba",
product5 : "Emil",
product6 : "Fidschi",
}
return object
}
function commonAJAXPOSTCall(jsonstring){
return $.ajax({
type: 'POST',
data: jsonstring,
url: "http://localhost:3000/posts"
}).then((response) => {
return response
})
}
export async function jsonDBSetter(){
let object = createObject()
//console.log(object)
object = JSON.stringify(object)
let resultCheck = await commonAJAXPOSTCall(object)
console.log(resultCheck)
}
現在的問題是,最終,來自對象的數據沒有按照我的意願插入“ posts”表中。 我希望將每個屬性插入其自己的行中,這樣我就可以擁有“ key => value”,就像它在對象內部一樣。 但是,實際行為是JSON服務器創建一個密鑰,然后將整個JSON字符串保存到此單個密鑰。
我對使用json服務器非常陌生,到目前為止,我並沒有真正發現任何有用的信息來確切說明如何使用我的用例...
編輯:而且我想避免“變通方法”,在該方法中,我遍歷對象並為JS對象的每個成員進行AJAX調用。
嘗試這個 :
return $.ajax({
type: 'POST',
data: jsonstring,
contentType: "application/json",
url: "http://localhost:3000/posts"
}).then((response) => {
return response
})
如果還是不行,您可以嘗試使用Formdata代替:
function createObject(){
let form_data = new FormData();
form_data.append('product1', "Apple");
form_data.append('product2', "Banana");
form_data.append('product3', "Cucumber");
form_data.append('product4', "Duba");
form_data.append('product5', "Emil");
form_data.append('product6', "Fidschi");
return form_data;
}
function commonAJAXPOSTCall(formdata){
return $.ajax({
dataType: 'text',
type: 'POST',
contentType: false,
processData: false,
data: formdata,
url: "http://localhost:3000/posts"
}).then((response) => {
return response
})
}
export async function jsonDBSetter(){
let formdata = createObject()
let resultCheck = await commonAJAXPOSTCall(formdata)
console.log(resultCheck)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.