我在两个应用程序之间发送数据时遇到问题。我使用此代码序列数据,以JSON在C#:在C#中序列化为JSON并在TS中反序列化
public static string SerializeToJson<T>(this T obj)
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
MemoryStream ms = new MemoryStream();
serializer.WriteObject(ms, obj);
byte[] array = ms.ToArray();
return Encoding.UTF8.GetString(array, 0, array.Length);
}
,然后我这个使用socket通信发送到在打字稿实现我的第二个应用程序。我反序列化使用:
JSON.parse
功能,它工作正常,但如果数据是例如8211特殊字符“ - ”它抛出异常
SyntaxError: Unexpected token in JSON at position 907
也许是不同的编码,序列化问题和反序列化,但我不知道在JSON.parse中使用哪种编码。
任何人都可以帮到我吗?
你能提供json导致错误的例子吗? – eocron