【问题标题】:destination.push is not a function ngResource save() AngularJSdestination.push 不是一个函数 ngResource save() AngularJS
【发布时间】:2013-06-15 07:38:50
【问题描述】:

ngResource save() 到使用 $resource 的邮件 API 可以在这里演示:

http://plnkr.co/edit/EakLFygH0QGr5zJ9xqZr

消息已发送,但我的控制台日志中出现错误:

destination.push is not a function

  • 导致此错误的原因是什么?

  • 返回的响应是被错误阻塞还是我使用save()响应回调错误?

【问题讨论】:

  • 发送到服务器的数据应该如何看?我有错误{"status":"error","code":-2,"name":"ValidationError","message":"Validationerror:{\"message\":\"Pleaseenteranarray\"}"}
  • @WooCaSh 除非您使用 plunker 视图输入有效的电子邮件和消息,否则它将引发错误。

标签: javascript angularjs


【解决方案1】:

$resource 不适合您的用例。在 Angular doc 中,它说 $resource

创建资源对象的工厂,可让您与 RESTful 服务器端数据源进行交互。

但是,在您的情况下,您需要的只是一个 POST http 调用。因此,不要使用$resource,而是这样做:

$http.post('https://mandrillapp.com/api/1.0/messages/send.json', post).
    success(function(response) {
        console.log(response);
    }).
    error(function() {
        ...
    });

我已经分叉并更新了 plunk,它可以正常工作。


来自documentation的信息:

Mandrill API 主要是 RESTful API。已知警告:

所有 API 调用都应使用 HTTP POST

【讨论】:

    猜你喜欢
    • 2014-05-19
    • 1970-01-01
    • 1970-01-01
    • 2015-11-25
    • 2015-10-27
    • 2015-06-08
    • 2016-09-16
    • 2014-08-08
    • 2015-09-12
    相关资源
    最近更新 更多