客戶端有表單和按鈕,我想將用戶輸入的數據發送到服務器,在那裏有請求處理程序保存數據到數據庫,從數據庫到客戶端。Angular2:請求時如何從客戶端發送數據到服務器
我該如何做到這一點我對邏輯感到困惑,我認爲有使用body parser,在這種情況下請求選項的作用是什麼,我發現解決方案但我沒有實現盲目的,我只是想了解
在客戶端後,我的方式去做:
let headers: Headers = new Headers();
headers.append('Content-Type', 'application/json');
let opts: RequestOptions = new RequestOptions();
opts.headers = headers;
this.http.post('http://localhost:
3000/addStudent',JSON.stringify(obj),opts).subscribe((res: Response) => {
console.log(res.json())
setTimeout(()=>{
this.students = res.json();
}, 3000)
})
在服務器端:
app.post('/addStudent',function(req,res){
var newStudent = new StudentModel(req.body);
console.log(req.body);
newStudent.save();
StudentModel.find(function(err,data){
if(err) res.send(err)
else{
res.json(data)
}
})
我們仍然可以發送帶有GET字符串化的身體?我試過HTTT獲得(網址,選項),但我不能讓身體到達服務器,我錯過了什麼? – Ayyash
不,我不這麼認爲,與GET請求,你可以發送身體的一部分。您可以使用POST請求以及PUT請求發送正文部分。 –
我想這是有道理的。但是我們來自一個jQuery背景,我們通過讓GET請求傳遞數據json對象而使我們被破壞,它爲我們設置參數。 – Ayyash