PHP では Axios POST パラメーターにアクセスできません
コードでは、「application/x」を指定して Axios を使用して POST リクエストを送信しています。 -www-form-urlencoded」コンテンツ タイプ。ただし、PHP 側で POST データが $_POST 配列または $_REQUEST 配列に入力されないという問題が発生しています。
この問題の根本原因は、POST データの形式にあります。 PHP は、POST データが「application/x-www-form-urlencoded」形式であることを想定しています。これは、HTML フォーム送信のデフォルト形式です。デフォルトでは、Axios は JavaScript オブジェクトを JSON にシリアル化しますが、これは $_POST でサポートされているデータ形式ではありません。
解決策: URLSearchParams または qs Library を使用する
この問題を解決するにはでは、次のメソッドを使用して POST データを正しい形式でエンコードできます:
<code class="javascript">const params = new URLSearchParams(); params.append('param1', 'value1'); params.append('param2', 'value2'); axios.post('/foo', params);</code>
<code class="javascript">const qs = require('qs'); axios.post('/foo', qs.stringify({ 'bar': 123 }));</code>
または、PHP を変更して JSON を POST データとして処理することもできます:
$_POST を設定するためのデータ形式として JSON を処理するように PHP を設定する方法の詳細については、この回答を参照してください。
以上がさまざまな方法を使用して PHP で Axios POST パラメータにアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。