Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Typescript fields with special characters

We need to call a REST API from out node.js code in Typescript and would like to have corresponding types for requests and responses. Unfortunately, JSON for the interface we are given contains fields such as:

{...
    "@ID": "1234567890",
        ...
    "@Name": "something",
    "#text": "content",
...
}

We have been told, that this stems from a limitation of the other end's automated "JSONifier" and cannot be changed. How do we set up interfaces that fit for this? The following obviously won't work:

  export interface Request {
    @ID: string;
    @Name: string;
    #text: string;
    ...
  }
like image 618
jasper Avatar asked Apr 21 '17 11:04

jasper


1 Answers

Just like JS objects, you can surround the names with quotes, like so:

  export interface Request {
    "@ID": string;
    "@Name": string;
    "#text": string;
  }
like image 143
Madara's Ghost Avatar answered Oct 06 '22 02:10

Madara's Ghost