2017-10-13 14 views
0

方法カールPHPの基本的なHTTP認証が405エラーを返す

/user/role/authenticate 

私のウェブサーバのAPI上のユーザ名とパスワードの形式でHTTPの真偽を必要としません。

次のコードを使用して、WebサーバーのAPIにCodeIgniterで設計された別のフロントエンドからアクセスします。

$URL='http://.../user/role/authenticate'; 
$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, "testusername:testpassword"); 
$result=curl_exec ($ch);   
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
echo $status_code; 
print_r($result); 
curl_close ($ch); 

しかし、私は結果を取得し,, 405:メソッド」許可されていません

の対処方法

+1

デフォルトの方法はGETです。あなたが試してみました:curl_setopt($ ch、CURLOPT_POST、1); – lovelace

+0

このコード行を追加できますか?または、私はsometingを変更する必要がありますか? – faki9123

答えて

0

認証方式を投稿する必要が

この例私のカールヘッダ

から。?。
"authorization: Basic ". base64_encode($username.':'.$password), 

base64はオプションですが、APIの認証に依存します

関連する問題