如何在cakephp中使用授权API?
How to use authorize API in cakephp?
我正在使用 cakephp 2.6.7。我想将 Authorize Api(http://www.authorize.net/) 集成到我的 cakephp 应用程序中。我在本地主机中由 composer 设置了 api。它工作正常。这是文件结构:
这里的 charge-credit-card.php 是 运行 的最终脚本。在这个文件中,我包含了一些先决条件文件,如下所示:
require 'authorize/autoload.php';
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
现在我把 authorize 文件夹放在 cakephp 的 Vendor 文件夹中:
然后我在paymentsController.php中添加autoload.php如下:
require_once(APP . 'Vendor' . DS . 'authorize' . DS . 'autoload.php');
但是我对
感到困惑
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
替换。我应该如何替换 cakephp 控制器中的这两行?这是我的完整代码:
<?php
require_once(APP . 'Vendor' . DS . 'authorize' . DS . 'autoload.php');
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
define("AUTHORIZENET_LOG_FILE", "phplog");
class PaymentsController extends AppController {
var $layout = 'admin';
// public $components = array('Auth');
public function isAuthorized($user = null) {
$sidebar = $user['Role']['name'];
$this->set(compact('sidebar'));
return true;
}
public function beforeFilter() {
parent::beforeFilter();
// Allow users to register and logout.
$this->Auth->allow('process');
}
}
?>
感谢您的宝贵时间。
我猜你的问题是特定于 php 别名而不是 ANet sdk 本身?
这里有一个关于制作全局可访问别名的问题。似乎没有直接的方法来做到这一点。
PHP Global namespace aliases
相关:
http://grokbase.com/t/php/php-general/10a38hape9/is-it-possible-to-create-a-global-namespace-alias
默认方法是定义...
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
... 在每个需要使用别名的文件中。 (你必须知道,一旦自动加载,命名空间就可以全局访问)
这应该可以让您的应用程序正常工作。
我正在使用 cakephp 2.6.7。我想将 Authorize Api(http://www.authorize.net/) 集成到我的 cakephp 应用程序中。我在本地主机中由 composer 设置了 api。它工作正常。这是文件结构:
这里的 charge-credit-card.php 是 运行 的最终脚本。在这个文件中,我包含了一些先决条件文件,如下所示:
require 'authorize/autoload.php';
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
现在我把 authorize 文件夹放在 cakephp 的 Vendor 文件夹中:
然后我在paymentsController.php中添加autoload.php如下:
require_once(APP . 'Vendor' . DS . 'authorize' . DS . 'autoload.php');
但是我对
感到困惑use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
替换。我应该如何替换 cakephp 控制器中的这两行?这是我的完整代码:
<?php
require_once(APP . 'Vendor' . DS . 'authorize' . DS . 'autoload.php');
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
define("AUTHORIZENET_LOG_FILE", "phplog");
class PaymentsController extends AppController {
var $layout = 'admin';
// public $components = array('Auth');
public function isAuthorized($user = null) {
$sidebar = $user['Role']['name'];
$this->set(compact('sidebar'));
return true;
}
public function beforeFilter() {
parent::beforeFilter();
// Allow users to register and logout.
$this->Auth->allow('process');
}
}
?>
感谢您的宝贵时间。
我猜你的问题是特定于 php 别名而不是 ANet sdk 本身?
这里有一个关于制作全局可访问别名的问题。似乎没有直接的方法来做到这一点。 PHP Global namespace aliases
相关: http://grokbase.com/t/php/php-general/10a38hape9/is-it-possible-to-create-a-global-namespace-alias
默认方法是定义...
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;
... 在每个需要使用别名的文件中。 (你必须知道,一旦自动加载,命名空间就可以全局访问)
这应该可以让您的应用程序正常工作。