Возникли проблемы с анализом данных поста в узле

Это действительно беспокоит меня. У меня есть сервер узлов, который получает данные постов, анализирует их и затем отправляет обратно как часть строки json. Но по какой-то причине это не работает.

Данные входящего сообщения форматируются: rgb=rgb(xxx%2Cxxx%2Cxxx)

Я анализирую его и удаляю rgb и круглые скобки:

var str = (querystring.parse(postData).rgb);
var str=S(str).replaceAll('%2C', ',').s;
var str=S(str).replaceAll('rgb(', '').s;
var rgb=S(str).replaceAll(')', '').s;

Это оставляет меня с: ххх, ххх, ххх

Это именно то, что мне нужно отправить в эту строку JSON:

hue.light(Light1, function(light){
hue.change(light.set({'rgb':[rgb]}));
 });

Но это не работает.

Это работает, поэтому я знаю, что я на правильном пути:

hue.light(Light1, function(light){
hue.change(light.set({'rgb':[xxx,xxx,xxx]}));
 });

Есть ли какой-то тип преобразования, который мне нужно сделать, чтобы строка работала?

1 ответ

Решение

rgb строка, содержащая значения, разделенные запятыми Вам нужно проанализировать эти значения и поместить их в массив. Попробуй это:

rgb = rgb.split(',')
         .map(function(str) { return parseInt(str, 10); });
Другие вопросы по тегам