Fetchの代わりにAxios

8678 ワード

how-to-use-axios-with-react
Why use Axios in React?
  • json.stringgify()は使いません.
  • には、すべてのHTTPメソッドに一致する関数名が存在する.
  • ステータスコードをチェックしてエラーを処理するfetchとは異なり、400~500の範囲でエラーが投げ出されます.
  • クライアントのみならず、サーバ上でも使用できます.
  • How to use Axios with React?npm i axios
    const baseURL: "https://songbetter.tommy.com/"
    
    // GET
    axios.get(baseURL).then(response => console.log(response.data))
    
    // POST (= PUT과 동일한 방법)
    axios.post(`${baseURI}/1`, {/*body*/}, {headers:{/**/}).then(response => console.log(response.data)
    
    // DELETE
    axios.delete(`${baseURI}/1`).then(() => alert("POST DELETED!"))
    
    // Erros Handling
    .catch(error => console.log(error))
    How to create an Axios Instance
    const client = axios.create({
      baseURL: "https://songbetter.tommy.com/"
    });
    
    client.get("/1").then(response => console.log(response.data))
    How to use the Async-Await Syntax with Axios?
    useEffect(() => {
      async function getPosts() {
      	const response = await client.get("/1");
      	console.log(response.data);
    	}
      getPosts();
    }, []);
    
    async function deletePost() {
      await client.delete("/1");
      alert("POST DELETED!")
    }
    useAxios Custom Hooknpm i use-axios-client
    const { data, error, loading } = useAxios({
      url:  "https://songbetter.tommy.com/1"
    });