2013-11-04 82 views
0

我正在构建一个Web应用程序并需要连接到第三方API。 由第三方提供的示例代码使用HTTP/Request2进行连接。CakePHP和HTTP /请求2

我知道我可以使用curl来连接,但我更愿意使用提供给我的方法。

我已尝试添加:

App::import('Core', 'HttpSocket'); 
$HttpSocket = new HttpSocket(); 

到我的控制器,但是当我运行它,我得到的错误:

Error: Class 'HttpSocket' not found

我试图找到如何使用HttpSocket例子有cakePHP,在哪里/如何将它添加到控制器。

这是我的控制器:

class RequestsController extends AppController { 

    public function index() { 
     App::import('Core', 'HttpSocket'); 
     $HttpSocket = new HttpSocket(); 
    } 
} 

任何帮助/建议将不胜感激。

+0

CakePHP版本?您试图包含HttpSocket的方式应该适用于旧版本的Cake,http://book.cakephp.org/1.3/en/The-Manual/Core-Utility-Libraries/HttpSocket.html,但已更改为新版本的蛋糕。 http://book.cakephp.org/2.0/en/core-utility-libraries/httpsocket.html – Kai

+0

我正在使用2.4.2我已经看到你发送给食谱的链接,但我仍然没有设法实现它正确 –

+0

@Ronnyvdb你在文档中的哪里看到这个错误的方法?你能链接到源代码吗?我敢打赌,你没有阅读正确的手册。 – mark

回答

1

如果你使用的是2.4.2,你不应该使用App :: import,而应该使用App :: uses,写在版本2 +的http://book.cakephp.org/2.0/en/core-utility-libraries/httpsocket.html(我发布的第二个链接)中。我通常将App :: uses作为文件的顶部,位于类声明的上方,但只要在引用它之前将其加载,就可以调用它。

App::uses('HttpSocket', 'Network/Http'); 
$HttpSocket = new HttpSocket();