首页 文章

angular2 http.post原始地址和目的地址在一起

提问于
浏览
0

Angular2 http.post(http://127.0.0.1:555)

Chrome开发人员网络显示 post "http://127.0.0.1:4444/127.0.0.1:5555" 未找到

"http://127.0.0.1:5555" 是节点服务器

"http://127.0.0.1:4444" 是angular2服务器

为什么两个堆叠在一起?

从'@ angular / core'发布组件import {Component,OnInit};从'@ angular / router'导入{ActivatedRoute,Router};从'./post-detail.service'导入;

@Component({
  selector: 'app-post-detail',
  templateUrl: './post-detail.component.html',
  styleUrls: ['./post-detail.component.scss']
})                                                                    
export class PostDetailComponent implements OnInit {
  postDetail= {
    title: '',
    userName: '',
    postWriteTime: 0,
    readTimes: 0,
    commentTimes: 0
  };
  opts = {
  url: 'http:127.0.0.1:5555/postDetail',
  body: '',
};                                                            
  constructor(private router: Router, private activateRoute: ActivatedRoute, private postDetailService: PostDetailService) { }

  ngOnInit() {
    this.activateRoute.params.subscribe((params) => {
      this.opts.body = params['postId'];
      console.log(params, 'params');
    });
   this.getPostDetailById();
  }
  getPostDetailById() {
    this.postDetailService.getPostDetail(this.opts).subscribe(
        res => {
          console.log(res, 'res');
        },
        err => console.log(err),
        () => console.log("complete"));
  }

}
import { Injectable } from '@angular/core';
import {Http, Response} from '@angular/http';
import {Observable} from 'rxjs/Rx';
@Injectable()
export class PostDetailService {
    constructor(private http: Http) {}
    getPostDetail(opts): Observable<any> {
        console.log(opts, 'opts');
        return this.http.post(opts.url, opts.body).
          map((res: Response) => res.json())
            .catch((error: any) => Observable.throw(error || 'Server error'));
    }
}

1 回答

  • 1

    网址应该是

    url: 'http://127.0.0.1:5555/postDetail',
    

    代替

    url: 'http:127.0.0.1:5555/postDetail',
    

相关问题