当前位置: 首页 > 面试题库 >

AngularJS $ http.post删除属性

易京
2023-03-14
问题内容

当我$http.post在AngularJS中使用类似对象的对象时:

{  name: '232', id: '3434', $type: "API.Models.Fields.ValuesList, API" }

签名:

$http.post('api/records', model);

$type不论值如何,都会在chrome流量监听器上每次删除该属性。

有一些秘密的$除垢剂;)吗?

更新:角度 > = 1.3现在不会删除$ ATTRS。


问题答案:

是的,通过$http服务发送数据时,Angular会删除美元前缀的属性。

$
http服务使用angular.toJson方法将对象序列化为JSON字符串。该方法使用前$符号剥离属性,因为angular在内部使用此表示法(例如,实例方法$save可用于所有ngResource对象)。

快速的解决方法是在将数据传递给之前,手动(使用JSON.stringify)对数据进行字符串化$http

$http.post('/api/path', JSON.stringify(model));


 类似资料:
  • 但是,有没有一种方法可以使用$http.post()来实现这一点?我是否必须始终包含头部才能使其工作?我相信上面的内容类型指定了发送数据的格式,但是我可以将它作为javascript对象发送吗?

  • 问题内容: 谁能告诉我以下语句为什么不将帖子数据发送到指定的URL?调用了url,但是在打印$ _POST时在服务器上- 我得到一个空数组。如果我在将消息添加到数据之前在控制台中打印消息-它显示正确的内容。 我也尝试过将数据作为字符串(具有相同的结果): 当我以以下格式使用它时,它似乎可以正常工作: 但是有没有办法用$ http.post()做到这一点- 我是否总是必须包含标头才能使其正常工作?我

  • 问题内容: 我正在使用简单的xml库:http : //simple.sourceforge.net/home.php 我的@ElementList批注有问题:如果我使用这样的批注: 我的XML文件还有一个属性: 如何删除属性? 问题答案: 该属性告诉Simple 您使用哪种实现。如果缺少,Simple会自己寻找合适的类。 一种解决方案是使用而不是: 现在,简单将不会添加class-Attribu

  • 问题内容: 如果我有JSON对象,请说: 我可以删除“ key1”使其变为: 问题答案: 简单:

  • 删除属性(命令)从模式中删除属性。 它不会从记录中删除属性值,它只是改变模式。 以下语句是命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 定义属性所在的类。 - 指定想要移除的属性。 - 如果在属性上定义了一个或多个索引。 示例 尝试使用以下命令从类中删除属性。 如果上述命令执行成功,您将得到以下输出。

  • 问题内容: 当我使用我的代码时,但是如果我使用$ http.post,则永远不会将参数获取到请求.php文件中。 这是服务功能: 和控制器功能: 和我的AJAXRequest.php文件 如果我使用 $ http.post() 输出 : 如果我使用 $ http.get(), 我的输出是: 我检查了FireBug工具中的帖子,该帖子将数据发送到我的php文件中。但PHP文件没有参数。 如果我使用