2017-04-21 4 views
2

Wir müssen eine REST-API aus out node.js Code in Typescript aufrufen und möchten entsprechende Typen für Anfragen und Antworten haben. Leider JSON für die Schnittstelle wir angegeben enthält Felder wie:Typescript-Felder mit Sonderzeichen

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

Uns wurde gesagt, dass dies eine Beschränkung des anderen Endes des automatisierten „JSONifier“ stammt und nicht verändert werden kann. Wie richten wir Schnittstellen ein, die dazu passen? Die folgende offensichtlich nicht:

export interface Request { 
    @ID: string; 
    @Name: string; 
    #text: string; 
    ... 
    } 
+0

ich rememberd, dass es tatsächlich möglich ist, um die Felder zu erklären, wie '@ID' und Zugriff über req ['@ ID']. Ich denke, das ist eine sehr hässliche Lösung. – jasper

Antwort

4

Genau wie JS Objekte, die Namen mit Anführungszeichen umgeben kann, etwa so:

export interface Request { 
    "@ID": string; 
    "@Name": string; 
    "#text": string; 
    }