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



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

Chrome Developer网络显示 找不到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服务器

为什么两个堆叠在一起?

发布组件 导入{component,oninit}来自'@angular/core'; 来自'@Angular/Router'的导入{ActivatedRoute,Router}; 从'./post-detail.service'import {PostDetailService};

@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'));
    }
}

url应为

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

而不是

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

相关内容

最新更新