Go での HTTP POST リクエスト: トラブルシューティングとコード ソリューション
Go で POST リクエストを実行しようとした最近の試みで、問題が発生したとユーザーから報告されました。フォーム送信付き。 httputil テストなどのさまざまなアプローチを試している間、ユーザーはリクエストを正常に完了することが困難でした。
この解決策は、フォーム データの適切な配置を中心に展開されます。正しい方法では、リクエストで PostForm フィールドを利用する代わりに、フォーム データをリクエスト本文の一部として設定します。 strings.NewReader(form.Encode()) を利用してリクエスト本文を作成するようにコードを変更すると、リクエストを効果的に送信できます。
詳しく説明すると、エラー メッセージに示されているコードは次のとおりです。
req, err := http.NewRequest("POST", APIURL, nil)
は、関連するフォーム フィールド値を含むリクエスト本文を含めるように変更する必要があります:
req, err := http.NewRequest("POST", url, strings.NewReader(form.Encode()))
この変更により、フォーム データがPOST リクエストの本文の一部として送信され、発生した問題が解決されます。
以上がGo HTTP POST リクエストが失敗するのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。