簡體   English   中英

使用 NEXT JS 發送帖子並點擊獲取請求

[英]send post and get request on click using NEXT JS

單擊同一個按鈕時,我需要發布並獲取我的數據[例如寫入和顯示評論],但是當我單擊按鈕時一切正常,但是帶有 304 狀態代碼的請求正在無限循環運行,有人可以幫忙嗎?

    const addCommentHandler = (commentData) => {
        axios({
          url: `/api/comment/${eventId}`,
          method: "post",
          data: commentData,
    
          headers: {
            "Content-type": "application/json",
          },
        }).then((res) => {
          const data = res.data;
          console.log(data);
        });
    
        axios({
          url: `/api/comment/${eventId}`,
          method: "get",
        }).then((res) => {
          const data = res.data;
          setComments(data.comments);
        });
      };
    
      useEffect(() => {
        addCommentHandler();
      }, []);

似乎您想發布數據然后想要獲得更新的評論。但是您正在創建兩個異步 Api 調用..

304 狀態碼的意思是“請求的資源自上次訪問以來沒有被修改過”

請刷新緩存並重試..

  const addCommentHandler = async (commentData) => {
   // add Try Catch for Errors..
   const responseData = await axios({
      url: `/api/comment/${eventId}`,
      method: "post",
      data: commentData,
      headers: {
        "Content-type": "application/json",
      },
    })

    const resData = await axios({
      url: `/api/comment/${eventId}`,
      method: "get",
    })

   setComments(resData.data.comments);
  };

  useEffect(() => {
    // Pass CommentData as Params in addCommentHandler
    addCommentHandler();
  }, []);`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM