Node.js Needle ライブラリを使用して RESTful リクエストを API に送信する正しい方法を見つけようとしています。画像の URL に関するコード以外はすべて正しいと思います。見た目や配置場所を変更しようとしても、無効な画像であるというエラーが表示され続けますが、そうではなく、URL は問題ありません。したがって、私のコードが間違っていると推測されるため、画像の URL であると考えられるものは、おそらく URL ではありません (ただし、本文/画像の URL があるべき場所にある他のコードまたはコードである可能性があります)。
const imageUrl = 'https://upload.wikimedia.org/wikipedia/commons/3/37/Dagestani_man_and_woman.jpg'
// Request parameters.
const params = {
returnFaceId: true,
returnFaceLandmarks: false,
returnFaceAttributes: 'age,gender,headPose,smile,facialHair,glasses,emotion,hair,makeup,occlusion,accessories,blur,exposure,noise'
}
var options = {
body: '{"url": ' + '"' + imageUrl + '"}',
headers: {
'Content-Type': 'application/json',
'Ocp-Apim-Subscription-Key': subscriptionKey
}
}
needle.post(endpoint, params, options, function (err, res, body) {
console.log(`Status: ${res.statusCode}`)
console.log('Body: ', body)
console.log('ERROR: ' + err)
//console.log(res)
})
また、本文をプレーンなオブジェクトのように記述しようとしましたbody = { 'url': imageURL}
が、それでも同じエラーが発生します。
エラー:
Status: 400
Body: { error: { code: 'InvalidURL', message: 'Invalid image URL.' } }
私が呼び出そうとしている API は次のとおりです。これは、他のサンプルで動作することが確認されています :