首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我正在尝试访问某个本地MPESA支付API,但收到一个错误

我正在尝试访问某个本地MPESA支付API,但收到一个错误
EN

Stack Overflow用户
提问于 2018-01-31 03:27:26
回答 2查看 289关注 0票数 1

我正在尝试使用laravel从MPESA支付API获得响应,但我得到了一个错误。我的代码如下

代码语言:javascript
复制
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;
    }
}

我得到的错误如下

EN

回答 2

Stack Overflow用户

发布于 2018-01-31 03:42:01

基本控制器使用Illuminate\Routing\Controller特征,它有一个'authorize()‘函数。您的函数声明与它冲突。将您的控制器方法名称更改为任何其他名称(而不是'authorize'),您就可以开始使用了

票数 2
EN

Stack Overflow用户

发布于 2019-06-21 08:00:04

你应该使用一个不同的函数名来代替"Authorize“。这是因为控制器中的"authorize“是在父类Controller中使用的保留名称。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48529095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档