Angular2 services angular 2 http post方法JSON输入意外结束 public deptpostdbServer(){ let headers=新的headers(); headers.append('application/x-www-form-urlencoded','Content-Type'); headers.append('Access-Control-Allow-Methods','POST'); headers.append('Access-Control-Allow-Origin','*'); 返回此文件。http .post('http://172.16.0.125:8090/buyR/api/saveDeptInfo/150/Software,标题) .map(res=>res.json()); 公共datapostDisplay(){ this.deptpost=[]; this.sitehttpservice.deptpostdbServer().subscribe((res)=>{ 这个.deptpost.push(res); }); 错误SyntaxError:JSON输入意外结束 在JSON.parse()处 在Response.Body.json(Body.ts:36) 在MapSubscriber.eval[作为项目](表.service.ts:77) 在MapSubscriber._next(地图ts:75) 在MapSubscriber.Subscriber.next(Subscriber.ts:95) 在XMLHttpRequest.onLoad(xhr_backend.ts:104) 在ZoneDelegate.invokeTask(zone.js:424) 在Object.onInvokeTask(ng_zone.ts:253) 在ZoneDelegate.invokeTask(zone.js:423) 在Zone.runTask(Zone.js:191) defaultErrorLogger@errors.ts:42 ErrorHandler.handleError@error\u handler.ts:69 邮政服务 第一: 最后: 拯救
angular2 post服务是json解析错误。我已传递了正确的参数。我可以使用API从数据库获取。从方法我可以使用post从文本框调用API我无法发送post方法我获取json解析错误。在你的post请求中,我看到了你的标题,但没有看到任何“参数”。实际上,您发送的是一个空的post请求。只需在请求中添加两个字段值,这将解决您的错误,除非远程服务器脚本中存在其他错误。您的post请求应如下所示:Angular2 services angular 2 http post方法JSON输入意外结束 public deptpostdbServer(){ let headers=新的headers(); headers.append('application/x-www-form-urlencoded','Content-Type'); headers.append('Access-Control-Allow-Methods','POST'); headers.append('Access-Control-Allow-Origin','*'); 返回此文件。http .post('http://172.16.0.125:8090/buyR/api/saveDeptInfo/150/Software,标题) .map(res=>res.json()); 公共datapostDisplay(){ this.deptpost=[]; this.sitehttpservice.deptpostdbServer().subscribe((res)=>{ 这个.deptpost.push(res); }); 错误SyntaxError:JSON输入意外结束 在JSON.parse()处 在Response.Body.json(Body.ts:36) 在MapSubscriber.eval[作为项目](表.service.ts:77) 在MapSubscriber._next(地图ts:75) 在MapSubscriber.Subscriber.next(Subscriber.ts:95) 在XMLHttpRequest.onLoad(xhr_backend.ts:104) 在ZoneDelegate.invokeTask(zone.js:424) 在Object.onInvokeTask(ng_zone.ts:253) 在ZoneDelegate.invokeTask(zone.js:423) 在Zone.runTask(Zone.js:191) defaultErrorLogger@errors.ts:42 ErrorHandler.handleError@error\u handler.ts:69 邮政服务 第一: 最后: 拯救,angular2-services,Angular2 Services,angular2 post服务是json解析错误。我已传递了正确的参数。我可以使用API从数据库获取。从方法我可以使用post从文本框调用API我无法发送post方法我获取json解析错误。在你的post请求中,我看到了你的标题,但没有看到任何“参数”。实际上,您发送的是一个空的post请求。只需在请求中添加两个字段值,这将解决您的错误,除非远程服务器脚本中存在其他错误。您的post请求应如下所示: public deptpostdbServer() { let headers = ne
public deptpostdbServer() {
let headers = new Headers();
headers.append('application/x-www-form-urlencoded', 'Content-Type');
headers.append('Access-Control-Allow-Methods', 'POST');
headers.append('Access-Control-Allow-Origin', '*');
return this.http
.post('http://172.16.0.125:8090/buyR/api/saveDeptInfo/150/Software', headers)
.map(res => res.json());
public datapostDisplay() {
this.deptpost = [];
this.sitehttpservice.deptpostdbServer().subscribe((res) => {
this.deptpost.push(res);
});
ERROR SyntaxError: Unexpected end of JSON input
at JSON.parse (<anonymous>)
at Response.Body.json (body.ts:36)
at MapSubscriber.eval [as project] (table.service.ts:77)
at MapSubscriber._next (map.ts:75)
at MapSubscriber.Subscriber.next (Subscriber.ts:95)
at XMLHttpRequest.onLoad (xhr_backend.ts:104)
at ZoneDelegate.invokeTask (zone.js:424)
at Object.onInvokeTask (ng_zone.ts:253)
at ZoneDelegate.invokeTask (zone.js:423)
at Zone.runTask (zone.js:191)
defaultErrorLogger @ errors.ts:42
ErrorHandler.handleError @ error_handler.ts:69
Post service
<div class="form-group" >
First: <input type="text" [(ngModel)]="data.DeptCd"
placeholder="text"/>
Last: <input type="text" [(ngModel)]="data.Desc"
placeholder="name"/>
<button (click)="datapostDisplay()">Save</button>
</div>
然后创建一个extractData方法来处理http响应。如果错误仍然存在,则在发送post请求之前,可以检查数据是否未定义
let headers = new Headers({ 'Content-Type': 'application/json' });
let data = { postFieldName : postValue, postFieldName2 : postValue2 };
let params = JSON.stringify(data);
return this.http.post(URL, params, headers)
.map(this.extractData)
.catch(this.handleError);