オブジェクトのarray
をフィルタリングしようとしていますが、これはAPI
から呼び出され、proxy
となります。私はNode.js
ウェブフレームワークExpress
を使用してAPI
コールを行っています。TypeError:data.filterは関数ではありません
APIには、次の値を返します。
{
data: [
{
type: "aaa",
name: "Cycle",
id: "c949up9c",
category: ["A","B"]
},
{
type: "bbb",
name: "mobile",
id: "c2rt4Jtu",
category: ["C","D"]
},
...
]
}
server.js
function sortDataByID(data) {
return data.filter(function(item) {
return item.id == 'c949up9c';
});
}
app.get('/products', (req, res) => {
const options = {
url: BASE_URL + '/products',
headers: {
'Authorization': 'hgjhgjh',
'Accept': 'application/json'
}
}
request.get(options).pipe(sortDataByID(res));
});
私は次のエラーメッセージを取得しておきます。
TypeError: data.filter is not a function
明白な間違いは何ですか?誰でも?
少し変更するだけで、ソリューションは実際に機能しました。 'JSON.parse(data).data.filter(...)'だけが見つかりませんでした。それは解析が必要でした。 – shaz