首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >应用请求头角6

应用请求头角6
EN

Stack Overflow用户
提问于 2018-05-17 18:05:07
回答 1查看 12.5K关注 0票数 1

我对angular相当陌生,我正在使用最新的版本。

我试图执行post请求,但遇到了CORS问题。我认为问题在于我的请求头中没有内容类型,我想将它添加到代码中。

在以前的版本中,下面的方法起作用了,但不再起作用了。为了在Angular 6中正确应用标头,我需要做些什么?

我得到以下错误

类型'{ header: any;}‘的参数不能分配给’RequestOptionsArgs‘类型的参数。

代码语言:javascript
运行
复制
import { Injectable } from '@angular/core';
import { environment } from '../environments/environment';

import { User } from './user';
import { Http } from '@angular/http';
import { HttpClient, HttpHeaders, HttpErrorResponse } from '@angular/common/http';
import { Observable } from 'rxjs';
import { map, catchError } from "rxjs/operators";



const API_URL = environment.apiUrl;

@Injectable({
  providedIn: 'root'
})
export class ApiService {

  constructor(private http: Http) {

  }

  public createUser(user: User): Observable<User> {
    let getHeaders: HttpHeaders = new HttpHeaders({
      'Content-Type': 'application/json'
    });
    return this.http
     .post(API_URL + '/users', user, {header: getHeaders}).pipe(
        map(response => {
          return new User(response.json());
        }), catchError(this.handleError)
      )
  }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-17 18:09:16

app/json自动应用于HttpClient请求,因此您不需要这样做。

尽管如此,您使用的是错误的Http导入。应:

代码语言:javascript
运行
复制
import { HttpClient } from '@angular/common/http';

constructor(private http: HttpClient) {}

this.http.post(...);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50397892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档