这是解决方案:
HTML
<ion-content>
<ion-list>
<ion-item>
<ion-label fixed> shop name </ion-label>
<ion-input type="text"[(ngModel)]="name" > </ion-input>
</ion-item>
<ion-item>
<ion-label fixed> city </ion-label>
<ion-input type="text" [(ngModel)]="city"> </ion-input>
</ion-item>
<ion-item>
<button ion-button block large (click)="post()">post </button>
</ion-item>
</ion-list>
</ion-content>
page2.ts
import { Component } from '@angular/core';
import { Http, Headers, RequestOptions } from '@angular/http';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/toPromise';
import { NavController, NavParams } from 'ionic-angular';
@Component({
selector: 'page-page2',
templateUrl: 'page2.html'
})
export class Page2 {
public name;
public city;
constructor(public navCtrl: NavController, public navParams: NavParams, public http: Http) { }
post(){
let headers = new Headers(
{
'Content-Type' : 'application/json'
});
let options = new RequestOptions({ headers: headers });
let data = JSON.stringify({
name:this.name,
city:this.city
});
console.log(data);
let url = 'http://localhost:3000/api/CoffeeShops';
return new Promise((resolve, reject) => {
this.http.post(url, data, options)
.toPromise()
.then((response) =>
{
console.log('API Response : ', response.json());
resolve(response.json());
})
.catch((error) =>
{
console.error('API Error : ', error.status);
console.error('API Error : ', JSON.stringify(error));
reject(error.json());
});
});
}
}
来源
2017-07-27 17:32:40
RSA
cURL不适用于Javascript。如果你在谈论客户端(浏览器)JS,那么你想要的是一个AJAX请求。你可以谷歌数以百计的例子如何做到这一点。如果你在说node.js,那么看看这里:https://stackoverflow.com/questions/6819143/curl-equivalent-in-nodejs。附:不确定你在这种情况下通过“回送”引用了什么? – ADyson
@adyson,谢谢。我想在移动应用中使用crud api,这是实现b,离子和使用打字稿/ JavaScript和角度。 – RSA
您可能需要了解更多关于node.js的信息https://www.npmjs.com/package/curl。 – Parsaria