私はこれに対する答えを数日間探していましたが、何もうまくいかないようです。私はnode.jsを初めて使用し、クライアント側からPOSTに応答するためにサーバー側のみに取り組んでいます。これは私がしなければならない課題のようなものです。私がしなければならないことは、私が書いていないクライアント スクリプトが、場所 '/sort' でパラメータを使用して POST 要求を行うときですtheArray
。配列を並べ替えて、文字列以外の値をすべて削除し、結果の値を JSON として返す必要があります。クライアント スクリプトは、文字列化された JSON 配列で theArray パラメータを送信します。だから、このようなもの
{"theArray":"[[],\"d\",\"B\",{},\"b\",12,\"A\",\"c\"]"}
.
ここでこのコードを試しました:
case '/sort':
if (req.method == 'POST') {
res.writeHead(200,{
'Content-Type': 'application/json'
});
var fullArr = "";
req.on('data', function(chunk) {
fullArr += chunk;
});
req.on('end', function() {
var jPar = JSON.parse(fullArr);
var arr = "";
var par = jPar.theArray;
arr += par;
function censor(key, value) {
if (typeof value == "string") {
return value;
}
return undefined;
}
var jsonString = JSON.stringify(par, censor);
console.log(jsonString);
});
res.end();
};
break;
しかし、これはエラーで返されます:
undefined:1
%2C%22A%22C%22
^
SyntaxError: Unexpected token h
at Object.parse (native) ...
誰かが私を助けてくれませんか。助けになるコードを教えてください。ありがとう