Quantcast
Viewing latest article 30
Browse Latest Browse All 63

NodeJS and Iconv - "ISO-8859-1" to "UTF-8"

I created a NodeJS application which should get some data from an external API-Server. That server provides its data only as 'Content-Type: text/plain;charset=ISO-8859-1'. I have got that information through the Header-Data of the server.

Now the problem for me is that special characters like 'ä', 'ö' or 'ü' are shown as .I tried to convert them with Iconv to UTF-8, but then I got these things '�'...

My question is, what am I doing wrong?


For testing I use Postman. These are the steps I do to test everything:

  • Use Postman to trigger my NodeJS application
  • The App requests data from the API-Server
  • API-Server sends Data to NodeJS App
  • My App prints out the raw response-data of the API, which already has those strange characters
  • The App then tries to convert them with Iconv to UTF-8, where it shows me now this '�' characters

Another strange thing:When I connect Postman directly to the API-Server, the special characters get shown as they have too without problems. Therefore i guess my application causes the problem but I cannot see where or why...


// Javascript Code:

try {    const response = await axios.get(      URL       {        params: params,         headers: headers      }    );    var iconv     = new Iconv('ISO-8859-1', 'UTF-8');    var converted = await iconv.convert(response.data);    return converted.toString('UTF-8');  } catch (error) {    throw new Error(error);  }

Viewing latest article 30
Browse Latest Browse All 63

Trending Articles