Я пытаюсь извлечь весь ресурс таланта из базы данных, но когда я попробовал конечную точку на Почтальоне, он возвратил SyntaxError. Неожиданный символ '' ошибка. Я не знаю, откуда появляется этот символ, поскольку почтальон намекнул, что ошибка в строке 66 моего контроллера, но при проверке строки 66 - пустая / пустая строка. Что может вызвать эту ошибку? Код моего контроллера (метод, который вызывает API, приведен ниже)
async searchTalent({ request, response }) {
try {
const params = request.except('projectId');
let matchedTalents = [];
let talentIds = [];
const {tools, fullname} = params;
if(tools) {
const find = await Database.raw("SELECT * FROM pro WHERE MATCH tools AGAINST ('"+ tools +"' IN NATURAL LANGUAGE MODE)");
const talents = find[0];
if(talents) {
for(let t = 0; t < talents.length; t++) {
const talent = talents[t];
if(talent.active == true) {
const user = await User.query().where({id: talent.userId, active: true, type: 'talent', isDeleted: false}).first();
if(user) {
if(talentIds.length > 0) {
if(talentIds.includes(talent.id) === false) {
user.profile = talent;
talentIds.push(talent.id);
matchedTalents.push(user);
}
} else {
user.profile = talent;
talentIds.push(talent.id);
matchedTalents.push(user);
}
}
}
}
}
// for (let i = 0; i < tools.length; i++) {
// const tool = tools[i];
// }
} else if(fullname) {
const getUsers = await User.query().where('first_name', 'LIKE', '%%' + fullname + '%%').orWhere('last_name', 'LIKE', '%%' + fullname + '%%').where({ active: true}).orderBy('id', 'desc').get();
for (let i = 0; i < getUsers.length; i++) {
const user = getUsers[i];
if(user.type == 'talent')
{
const talent = await Pro.query().where({userId: user.id}).first();
if(talent)
{
user.profile = talent;
matchedTalents.push(user);
}
}
}
}
const data = matchedTalents;
return response.json({
data: data,
message: data.length + ' Talents fetched',
error: false
})
} catch (e) {
Event.fire('log::error', e.message)
return response.json({
data: [],
message: e.message,
error: true
})
}
}
Я пытался найти и исправить со вчерашнего дня, но все ответы на вопросы stackoverflow, похоже, не решают эту проблему.