【问题标题】:Angular + httpService: POST & DELETE results?Angular + httpService:发布和删除结果?
【发布时间】:2015-01-14 15:05:54
【问题描述】:

我有一个 Angular 服务,它应该完成让我的控制器与我的 API 对话所需的所有 http 工作。

export interface IDummyEntityApiService {
    getAllDummies() : ng.IPromise<Array<Entities.IDummy>>;
}

class DummyEntityApiService implements IDummyEntityApiService {

    private http: ng.IHttpService;

    constructor($http : ng.IHttpService) {
        this.http = $http;
    }

    getAllDummies() {
        var url = "acme.com/api/dummies;
        return this.http.get(url).then(result => {
            return result.data;
        }, error => {
            // log error
        });
    }
}

然后我可以这样使用:

dummyEntityApiService.getAllDummies.then(result => {
    // fill results into list
}, error => { 
    fancyToast.create("Ooops, something went wrong: " + error);
});

我现在的问题是 - 这将如何与 POSTDELETE 一起使用?我知道$httpService.post(url, data).delete(url) 之类的方法,它们都返回IHttpPromise&lt;{}&gt;,但是将它们转换为IPromise 并没有真正意义,因为没有需要解析的数据?

【问题讨论】:

  • 如果 id 没有返回任何东西,可以试试IHttpPromise&lt;void&gt;

标签: javascript ajax angularjs typescript angular-http


【解决方案1】:

其实你可以在 HTTP 请求完成后使用 Promise 来执行一些东西。例如,您可以使用ng.IHttpPromise&lt;any&gt;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-14
    • 1970-01-01
    • 2016-12-12
    • 1970-01-01
    • 2021-03-17
    • 2010-09-14
    • 2013-01-06
    • 2011-09-03
    相关资源
    最近更新 更多