У меня есть производственный сервер (ubuntu), где пользователь заполняет и отправляет форму (multipart) для создания или обновления записи. Теперь иногда, когда я пытаюсь использовать req.allParams()
Я получаю объект с неполными данными.Частичные POSTED Данные в sails.js (время от времени)
Позволяет сказать, это то, что я обычно получаю:
data: {
id: '58155',
name: 'The Gallery Name',
email: '[email protected]',
phone: '(+54911)68460005',
url: 'www.theurl.com',
workingHours: 'Tuesday - Friday 3 - 8 pm',
artists: ['58350', '15503', '58346', '58347', '58348', '58349'],
locations: [{
country: 1,
state: null,
city: 45,
zip: '33175',
address: '' }
],
showOnGuide: true,
preferredLanguage: 'en',
events: [1, 4, 5]
}
};
Но время от времени я получаю:
data: {
id: '58155',
name: 'The Gallery Name',
email: '[email protected]',
phone: '(+54911)68460005',
url: 'www.theurl.com',
workingHours: 'Tuesday - Friday 3 - 8 pm',
artists: ['58350', '15503', '58346', '58347', '58348', '58349']
}
};
Я проверил формы, и они правильны, так что единственное, очевидно, что только последние ключи (поля формы) отсутствуют, поэтому я предполагаю, что это может быть связано с некоторым тайм-аутом POST?
Просто чтобы быть ясно, это то, как я получаю данные, до какого-либо форматирования сделано с моей стороны, и даже поместить в журнал sails/node_modules/skipper/index.js
/// .. some code
MultipartBodyParser(req, res, function(err) {
if (err) return next(err);
console.log(req.body);
/// ... some code
}
показывает частичную информацию, время от времени. Я не видел этого поведения на своей локальной машине, но, как я сказал, это редко, например, 1 раз в 30 раз, но все еще довольно катастрофически для клиента, чтобы потерять отправленные данные.
Это похоже на проблему с парусами, экспрессом или шкипером.
Я пытался отладить это в течение нескольких дней, и это самое близкое, что я получил, поскольку вначале я ничего не знал о том, почему и когда это происходит, теперь я знаю, что форма отправлена правильно, но паруса либо получает его неполным, либо анализирует его неправильно.
Неужели кто-нибудь сталкивался с подобной проблемой? Любые мысли, которые приводят к разрешению этого, приветствуются.
Версии:
- Узел 0,12
- Sails 0.11.3
Примечание: Это происходит с или без загрузки файла
EDIT: По с помощью сетевого менеджера (NetBalancer) Я попытался уменьшить скорость загрузки как можно больше 1 байт/с, но я не получаю странное поведение, поэтому не кажется, что медленная загрузка сети связана, по крайней мере, из ручного тестирования, я не уверен, насколько надежным является NetBalancer.
Обновление: Обновлено паруса до 0.12.1 и узел до 5.8.0, но проблема сохраняется.
Thanks
Может быть, пустые поля не являются отправлено с данными? – Bwaxxlo
Обычно они отправляются, всего несколько раз они измельчаются пустым или нет. И происходит только в обратном порядке, поэтому последние 2 или 3 поля не получают отправки или анализа – Zagen