第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 fetch 和 catch 引用對 PHP 文件做出反應

如何使用 fetch 和 catch 引用對 PHP 文件做出反應

PHP
瀟湘沐 2024-01-19 17:17:40
我正在嘗試使用 fetch 和 catch 方法將 JSON stringfy 請求發(fā)送到 PHP 文件,我可以執(zhí)行某些函數(shù)?,F(xiàn)在我沒有收到任何錯誤,但我無法讓該功能正常工作。        fetch('http://localhost/server/mail.php', {            method: 'POST',            redirect: 'follow',            headers : {                 'Content-Type': 'application/json',                'Accept': 'application/json'               },            body: JSON.stringify({ // Passes values to mail.php                name: inputName,                phone: inputPhone            }),        })        .then(response =>{            console.log(response);            if(response === 'success'){                history.push("/start"); // Route to another page                history.go(0);            }        })        .catch(function(err) { // Return error            console.log(err);        });如果我調(diào)試,console.log(response)我會收到包含以下內(nèi)容的反應對象:響應{type:“cors”,url:“http://localhost/server/mail.php”,重定向:false,狀態(tài):200,ok:true,bodyUsed:false,...}最后,我使用 PHP Mailer 庫通過它發(fā)送郵件的 PHP 代碼,我之前在另一個項目中使用過相同的代碼,應該可以正常工作。<?phpuse PHPMailer\PHPMailer\PHPMailer;use PHPMailer\PHPMailer\Exception;require './phpmailer/src/Exception.php';require './phpmailer/src/PHPMailer.php';require './phpmailer/src/SMTP.php';$name = $_POST['name'];$from = 'admin@yotamdahan.com'$to = 'admin@yotamdahan.com'; $message = $_POST['phone'];$subject = '????? ???';$mail = new PHPMailer();$mail->SMTPDebug = 0;$mail->CharSet = 'UTF-8';$mail->SMTPAuth   = true;$mail->Host   = "server270.web-hosting.com";$mail->Port       = 465;$mail->Username   = $to;$mail->Password   = "*******";$mail->SMTPSecure = "ssl";$mail->setFrom($from);$mail->Subject  = $subject;$mail->isHTML(true);$mail->Body = "?? ?????: " . $name . "\r\n <br/> ?????: " . $message;$mail->addAddress($to, 'Yotam Dahan');if(!$mail->Send()){   echo "Error sending: " . $mail->ErrorInfo;}else{   echo "success";}我的問題是 PHP 沒有發(fā)送電子郵件,我猜想,inputName并且InputPhone沒有正確傳遞,因此代碼無法運行,響應也不是success應有的樣子。如何通過reactJS中的fetch和catch向PHP發(fā)送正確的POST請求?
查看完整描述

1 回答

?
30秒到達戰(zhàn)場

TA貢獻1828條經(jīng)驗 獲得超6個贊

您正在發(fā)送數(shù)據(jù),application/json但從$_POST獲取數(shù)據(jù)application/x-www-form-urlencoded。


您可以使用FormData正確的內(nèi)容類型創(chuàng)建數(shù)據(jù),然后將URLSearchParams其傳遞FormData給獲取函數(shù)的主體。


您可以像這樣使用 FormData:


const formData = new FormData();


formData.append("name", inputName);

然后像這樣發(fā)送


fetch('http://localhost/server/mail.php', {

  method: 'POST',

  redirect: 'follow',

  body: new URLSearchParams(formData)

});


查看完整回答
反對 回復 2024-01-19
  • 1 回答
  • 0 關(guān)注
  • 139 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號