2016-11-13 39 views
0

那好吧,我有一個問題,Angular2如何正確放置請求

請求URL:http://.../rest/1.0/brand/test145 請求方法:PUT 狀態代碼:500內部服務器錯誤 遠程地址:...

請求負載是確定 { 「名」: 「test145」 }

addBrand(name : string){ 
    let body = JSON.stringify(name) 
    let url = this.baseUrl + '/brand/' + name; 
    return this.http.put(url, { name } ). 
    map(res => res.json()); 
} 

addBrand(name:any){ 
if(!name){return;} 
this.BrandService.addBrand(name) 
.subscribe(
    name => this.name.push(name), 
    error => this.errorMesage = <any>error); 

} 

但放應該像http://.../rest/1.0/brand/然後,應該只是請求有效載荷。當我從中刪除「名稱」時,它不會加載有效負載。

回答

0

stricly PUT是更新的,所以URL應該採用以下格式:

http://.../rest/1.0/brand/test145其中最後一個部分是唯一的ID(你需要指出你的意思是要更新什麼)

如果你希望創建一個記錄,你應該寧願發郵件到http://.../rest/1.0/brand

但是你總是可以選擇偏離慣例。爲了PUT到.../brand有效載荷{ "name": "test145" }您需要:

addBrand(name : string){ 
    let body = JSON.stringify({ name: name }) 
    let url = this.baseUrl + '/brand' 
    return this.http.put(url, body). 
    map(res => res.json()); 
}