ホームページ >バックエンド開発 >PHPチュートリアル >PHP Curl を Basic 認証で使用するときに発生する「認証パラメータが見つからない、または無効です」エラーを修正する方法

PHP Curl を Basic 認証で使用するときに発生する「認証パラメータが見つからない、または無効です」エラーを修正する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-11-10 22:42:03356ブラウズ

How to Fix

PHP Curl Basic 認証のトラブルシューティング

Basic 認証で PHP Curl を利用する場合、資格情報が適切にフォーマットされていることを確認することが重要です。次の手順では、PHPcurl で基本認証を使用する場合に「リクエスト内の認証パラメータが見つからないか無効である」という問題を解決する方法の概要を説明します。

提供されたcurl コマンド ライン リクエストでは、構文 {id}:{api_key} が使用されます。これは、curl ヘッダーで資格情報を指定する一般的な方法とは異なります。

PHP では、正しいアプローチは、 CURLOPT_HTTPAUTH および CURLOPT_USERPWD オプションは、curl によって提供されます。次のコードは、これらのオプションを効果的に設定する方法を示しています。

$username = 'ABC';
$password = 'XYZ';
$URL = '<URL>';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); // timeout after 30 seconds
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$result = curl_exec($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); // get status code
curl_close($ch);

このコードは、CURLOPT_HTTPAUTH オプションを使用して、URL、ユーザー資格情報 (ユーザー名とパスワード)、および認可タイプ (CURLAUTH_ANY) を確立します。 CURLAUTH_ANY では、基本認証とダイジェスト認証の両方が可能で、さまざまな認証方法との互換性が確保されています。

CURLOPT_USERPWD オプションは、文字列「$username:$password」の形式で認証情報を渡すために使用されます。これにより、追加のエンコードや変更を必要とせずに認証情報が適切にフォーマットされます。

CURLOPT_HTTPAUTH および CURLOPT_USERPWD の正しい構文とオプションを採用することにより、PHPcurl で基本認証を正常に確立し、認証エラーを解決できるはずです。 .

以上がPHP Curl を Basic 認証で使用するときに発生する「認証パラメータが見つからない、または無効です」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。