我正在尝试使用laravel从MPESA支付API获得回复,但我收到了错误消息。我的代码如下
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class MPESA_AUTH extends Controller
{
public function Authorize(){
$url = 'https://sandbox.safaricom.co.ke/oauth/v1/generate?grant_type=client_credentials';
$CONSUMER_KEY= 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$CONSUMER_SECRET= 'xxxxxxxxxxxx';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$credentials = base64_encode($CONSUMER_KEY,$CONSUMER_SECRET);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Basic '.$credentials)); //setting a custom header
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
$curl_response = curl_exec($curl);
$curl_json=json_decode($curl_response);
return $curl_json;
}
}
答案 0 :(得分:2)
Base控制器使用具有'authorize()'功能的Illuminate \ Routing \ Controller特性。你的函数声明与它发生了冲突。 将您的控制器方法名称更改为其他任何名称(“授权”除外),您应该好好去
答案 1 :(得分:-1)
您应使用其他函数名称代替“授权”。这是因为控制器中的“授权”是父类Controller中使用的保留名称。