-2

im using the clarifai face recognition Api and getting an error on my console saying: "TypeError: axios.post is not a function". anyone knows how do I solve it?

  • i dont use Axios in my code, but i think the API uses it. thanksthe Error on the console

I tried installing Axios and clarifai again and it did nothing

VLAZ
  • 26,331
  • 9
  • 49
  • 67
  • what package are you using? clarifai-javascript has been deprecated months ago at this point. You can still use the NodeJS gRPC package: https://www.npmjs.com/package/clarifai-nodejs-grpc or directly query the REST API: https://docs.clarifai.com/api-guide/predict/images/ (see "Javascript (REST)" snippets throughout the docs) – Jeremy Faret Oct 31 '22 at 19:43

3 Answers3

2

Background: The issue you are facing is due to the dependency of Clarifai JS on axios for requests. Throughout the development of the Clarifai, the library has accepted multiple versions of axios but haven't really configured compatibility on these versions. Ex. Clarifai is familiar with axios v1.1.2 but there is no compatibility for it to work in a good condition and perform well with the library.

To solve this issue:

  1. In your package.json file, update "axios" under "dependencies" to "0.27.2" (The compatible version as of now).
  2. Add an "overrides" section and include the code below (Overrides Section).
  3. Reinstall your node_modules folder (run 'npm install')

(in 'package.json')

"dependencies": {
...
"axios": "0.27.2",
"clarifai": "^2.9.1",
...
},
"overrides": {
"clarifai": {
"axios": "$axios"
}
},
...
0

Add the line below to your package.json in the dependencies:

"axios": "0.27.2"

then run the following:

npm install 

npm start

Happy coding!

0

Had same error,

Adding the line below in package.json in the dependencies:

"axios": "0.27.2"

Worked for me