Как добавить заголовки http в ответ JS приложения - PullRequest
0 голосов
/ 04 октября 2019

У меня есть приложение прореагировать. Я хочу добавить несколько заголовков http в каждый ответ, который возвращается из приложения. Подскажите, пожалуйста, как это реализовать!

ПРИМЕЧАНИЕ. Я не пытаюсь вызывать API с заголовками в запросе. Я хочу, чтобы мое приложение реакции отвечало некоторыми пользовательскими заголовками в ответе

Ответы [ 2 ]

0 голосов
/ 04 октября 2019

Вы можете создать перехватчики в axios или любой другой библиотеке, которую вы можете использовать: -

import React from "react";
import ReactDOM from "react-dom";
import axios from "axios";

axios.interceptors.response.use(
  function(response) {
    response.headers["custom"] = "custom header value";
    return response;
  },
  function(error) {
    return Promise.reject(error);
  }
);

class App extends React.PureComponent {
  state = {
    data: {}
  };
  componentDidMount() {
    axios.get("https://jsonplaceholder.typicode.com/todos/1").then(response =>
      this.setState({
        data: response.data
      })
    );
  }
  render() {
    return <div>{this.state.data.title}</div>;
  }
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
0 голосов
/ 04 октября 2019
const header = new Headers();
header.append('Access-Control-Allow-Origin', '*');

const body = {
  author: author,
  text: text
}

axios.post("https://api.test/posts/create", body, header)
  .then((res) => {
    this.setState({
      result: res
    });
  })
  .catch((error) => {
    this.setState({
      error: error.message
    });
  })

Вы должны использовать собственные заголовки объекта и добавить его в axios.

...