【问题标题】:Extra quotes in ServiceStack POSTServiceStack POST 中的额外引号
【发布时间】:2015-06-06 02:39:27
【问题描述】:

我正在使用带有 AngularJS 的 ServiceStack 3.9。我正在尝试做这样的 POST:

$http.post('web.ashx/addUser', data)

“数据”是一个正确的 JSON 对象。

但是,在执行 ServiceStack POST 时,我的 DTO 对象的每个字符串属性中都会出现双引号:

"\"John\""

而不是

"John"

我尝试配置 ServiceStack JSON 序列化程序,但无法修复。

对正在发生的事情有什么想法吗?

谢谢。

【问题讨论】:

  • 你在解析json对象吗?
  • 我不操纵它。格式如下:姓名:“John”,姓:“Smith”
  • 我在服务器端问?
  • 不,在服务器端我不解析它。我猜是 ServiceStack 为我做的。
  • 问题出在服务器端对吧?

标签: json angularjs servicestack quotes


【解决方案1】:

在您获得发布数据后尝试在服务器端使用JsonObject.Parse(objectToParse),它可能会解决您的问题。

【讨论】:

  • 我怎样才能 JsonObject.Parse(objectToParse)?我在服务器端的 Post 方法是:public void Post(UserRequest request)。 "request" 已经是一个 c# 类,但它的属性有双引号。
  • 如果我像这样发布数据: $.ajax({ type: "post", url: 'web.ashx/addUser', data: { name: 'John' } }));服务器端以 wright 格式(“John”)获取属性名称。但是,如果我发布 $http.post('web.ashx/addUser', data),它不会。你知道有什么区别吗?
  • 你可以看看transformRequest of $http 可能对你有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多