Javascript 在express server中以UTF-16编码发送JSON响应

Javascript 在express server中以UTF-16编码发送JSON响应,javascript,express,utf-8,utf-16,Javascript,Express,Utf 8,Utf 16,我有一个客户端,它正在从我的服务器读取UTF-16格式的响应,所以我的普通JSON似乎是这样用中文编写的 ≻畳捣獥≳琺畲ⱥ琢歯湥㨢攢䩹扨捇佩䩩啉䥺丱䥩䥳剮挵䥃䤶火噘䩃⸹祥灊䍚㙉橉歖䝍㉉㉙楖穎楎坍桊橍ぁ積睫㉎橖楙獉浉礹㉚畆塡桰䝤癬止歬橉楯坎睑橙橚坚㍉㉍硉浙祅䑍穑呏㍁坚橎楉楷坡う橉硯呎す呏㑉䑎祑䍌汊䡥楁橏ㅅ橎㕑積祫䑎㥊種乂歓奆洹睨啙䍤䉰㕈奡娸䉁䍡㉈䥐湘湚獢橦噳䅆Ⱒ產敳≲笺瀢潲楦敬㨢≻畦汬慎敭㨢䄢歮瑩倠牡獡慨≲ⱽ椢楮楴污敓畴≰昺污敳∬潲敬㨢唢䕓≒∬敶楲楦摥㨢牴敵∬捡楴敶㨢牴敵∬楟≤∺搵戰挶扥㌷ㅢ慢〲㌴

我有一个客户端,它正在从我的服务器读取UTF-16格式的响应,所以我的普通JSON似乎是这样用中文编写的

≻畳捣獥≳琺畲ⱥ琢歯湥㨢攢䩹扨捇佩䩩啉䥺丱䥩䥳剮挵䥃䤶火噘䩃⸹祥灊䍚㙉橉歖䝍㉉㉙楖穎楎坍桊橍ぁ積睫㉎橖楙獉浉礹㉚畆塡桰䝤癬止歬橉楯坎睑橙橚坚㍉㉍硉浙祅䑍穑呏㍁坚橎楉楷坡う橉硯呎す呏㑉䑎祑䍌汊䡥楁橏ㅅ橎㕑積祫䑎㥊種乂歓奆洹睨啙䍤䉰㕈奡娸䉁䍡㉈䥐湘湚獢橦噳䅆Ⱒ產敳≲笺瀢潲楦敬㨢≻畦汬慎敭㨢䄢歮瑩倠牡獡慨≲ⱽ椢楮楴污敓畴≰昺污敳∬潲敬㨢唢䕓≒∬敶楲楦摥㨢牴敵∬捡楴敶㨢牴敵∬楟≤∺搵戰挶扥㌷ㅢ慢〲㌴〹攷扣Ⱒ攢慭汩㨢愢歮瑩歀畯瑮椮≮∬牯慧楮慺楴湯㨢䬢畯瑮䈠≉∬敶楲楦慣楴湯潔敫≮∺㡣敦㙣㍥ㄷ㈳っ㌹搹㤷㔴愱愸㔵搰敥Ⱒ挢敲瑡摥瑁㨢㈢㄰ⴹ㘰㈭吰ㄱ㈺㨴㜲㌮ㄴ≚∬灵慤整䅤≴∺〲㤱〭ⴸ㐰ㅔ㨲㄰ㄺ⸴㔳娸Ⱒ弢癟㨢ⰰ漢杲湡穩瑡潩䥮≤∺搵戰挶扥㌷ㅢ慢〲㌴〹攷捣索}
但回应是这样的:

{
    "success": true,
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVjZmJjYmI0NmQ2MjNjMmQ4YmUyY2IxNyIsIm9yZ2FuaXphdGlvbklkIjoiNWNmYmNiYjU2ZDYyM2MyZDhiZTJjYjE4IiwiaWF0IjoxNTY1MzM3NTcxLCJleHAiOjE1NjUzNDgzNzF9.HEfSjX2TjgyI9oL2f6-ECgABfuJz2vQDwHvR5MGg_aU",
    "user": {
        "profile": {
            "fullName": "Ankit"
        },
        "initialSetup": false,
        "role": "USER",
        "verified": true,
        "active": true,
        "_id": "5cfbcbb46d623c2d8be2cb17",
        "email": "abc@xyz.com",
        "organization": "ABC",
        "createdAt": "2019-06-08T14:52:36.849Z",
        "updatedAt": "2019-07-29T07:14:58.130Z",
        "__v": 0,
        "organizationId": "5cfbcbb56d623c2d8be2cb18"
    }
}

我想知道是否有一种方法可以发送响应,这样客户端也可以将其读取为上面的JSON,而不是中文字符。

确保您的服务器为JSON数据发送正确的HTTP头(
内容类型:application/JSON
),并将数据编码为utf-8,这是此内容类型的默认编码,或发送包含所用字符编码的
编码:
标题

如果客户无法正确解释这一点,那就是他们的错。不能指望您在服务器端认真处理错误的客户端实现