0

我正在尝试https://maker.ifttt.com/trigger/event_name/with/key/xxxxxxxxxxxxxxxxxxxxxxxxxxx使用 Angular 2 发送 http POST 以使用 IFTTT 制造商 webhook。

正在接收请求,但未收到正文。

  post(): Promise<string> {
let headers = new Headers({ 'Content-Type': 'application/json'});
let options = new RequestOptions({ headers: headers });
console.log(options)
let body = { "value1": "21223232"};
console.log(body)
return this.http.post(this.webhookUrl, body, options)
         .toPromise()
         .then(this.extractData)
         .catch(this.handleError);

{{Value1}}应该有value1: 21223232并且可以打印,但我没有运气。

另外值得注意的是:

curl -X POST -H "Content-Type: application/json" -d '{"value1":"21223232"}' https://maker.ifttt.com/trigger/event_name/with/key/xxxxxxxxxxxxxxxxxxxxxxxxxxx

作品

有谁之前经历过这个吗?

4

2 回答 2

0

我终于解决了这个问题

let headers = new Headers({ 'Content-Type': 'application/json' });
let body = new FormData();
body.append('value1', "21223232");
return this.http.post(this.webhookUrl,body,headers)
         .toPromise()
         .then(this.extractData)
         .catch(this.handleError);

这是使用 Ionic 2 FormData()

于 2017-03-21T16:53:30.820 回答
0

我认为它作为一个可观察的或@.ajax 请求会更干净。

data = new FormData().append();

$.ajax(
                {
                    'url' : targetUrl,
                    'crossDomain': true,
                    'type': 'POST',
                    'data': data
                }
            ).done(function (rsp) {
                //..code
            }).fail(function (rsp) {
                Error();
            }); 
于 2017-03-21T17:01:45.800 回答