Я новичок с node.js и js в целом. Я обнаружил небольшую проблему: надеюсь, кто-нибудь может мне помочь. Я ввожу элемент для поиска, скажем «iphone 11» в API ebay, нажимаю кнопку поиска, и я получаю результаты поиска. Хорошо. Но если список элементов слишком длинный, я хочу добавить в текст ввода поиска 3-е слово или более для уточнения поиска, например, «iphone 11 черный».
Когда я это сделаю, и нажмите при нажатии кнопки «Отправить» новый список добавляется ниже предыдущего. Как сделать так, чтобы предыдущий список был заменен на второй, более точный?
Вот мой код
HTML
<input type="text" class="form-control advanced-form-control" id="search-category" placeholder="by Category" autocomplete="off">
<button id="btnSearch" type="button" onclick="SearchNew()">Search »</button>
Здесь функция, которая отправляет на ebay API поиска
async function SearchNew() {
var webString = document.getElementById("search-category").value;
const data = { webString };
const options = {
method: "POST",
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(data)
};
const resp = await fetch('/search', options);
const json_web = await resp.json();
console.log("json_web", json_web);}
здесь сообщение ebaysearch в приложении. js. Я правильно получаю список элементов, но, добавляя слово во входной поиск, я хочу заменить первый список вторым, более точным. Как я могу сделать это возможным?
app.post('/ebaysearch', (request, res) => {
const ebay_search = request.body;
var ebay_web = ebay_search.webString;
ebay_web = ebay_web.trim();
ebay_web = ebay_web.replace(" ", "%20");
var url = "https://svcs.ebay.com/services/search/FindingService/v1........";
getWeb();
async function getWeb() {
const promise = await fetch(url);
const response = await promise.json();
var items = response.findItemsByKeywordsResponse[0].searchResult[0].item || [];
var html = [];
for (var i = 0; i < items.length; ++i) {
var item = items[i];
var title = item.title;
var viewitem = item.viewItemURL;
if (null != title && null != viewitem) {
html.push(viewitem, title);
}
}
res.json(html);
};
});