JSOn对象没有在wcf webservice端正确反序列化

Siv*_* Km 16 c# wcf json web-services ios

我正在研究iOS项目并通过wcf webservice将Json字符串发送到后端,它为许多用户成功工作,但对于一些用户后端获取不完整的json字符串.

生成Json字符串的代码

NSData *data = [NSJSONSerialization dataWithJSONObject:EmployeeDetails options:0 error:nil];
    NSString *JsonString = [[NSString alloc] initWithData:data
                                                 encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

并通过以下代码附加请求附加json字符串

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:[jsonString dataUsingEncoding:NSUTF8StringEncoding]];
Run Code Online (Sandbox Code Playgroud)

EmployeeDetails是NSMutableDictionary,包含员工详细信息.

这是从BackEnd反序列化的成功Json字符串

{"FirstName":"Donald","LastCBPaymentType":6,"AcceptEmail":true,"CellPhone":"321-300-6874","Position":"3","CarrierNum":"4","EmpNum":"96874"}
Run Code Online (Sandbox Code Playgroud)

和不完整的Json字符串

{"FirstName":"roset","LastCBPaymentType":6,"AcceptEmail":true,"CellPhone":"321-300-6874","Position":"3","CarrierNum":"4","EmpNum":"98799
Run Code Online (Sandbox Code Playgroud)

某些用户在后端发生不完整的json字符串.

任何人都可以帮助解决这个问题?

Tom*_*ift 0

我最近在 PHP/CodeIgniter 中遇到了类似的问题,问题是 JSON 在到达我的处理程序之前通过一些过于雄心勃勃的正则表达式进行了“清理”。也许 WCF 中也发生了一些类似的清理工作?

我会尝试的事情:

  1. 使用Charles Proxy确认请求(POST?)确实按照您的预期发送了完整的正文。

  2. 尝试使用 Content-Type application/json 代替。