当前位置: 首页 > 知识库问答 >
问题:

如何在codeigniter中使用rest_客户端调用

蔺昊穹
2023-03-14

我是新的CodeIgniter和RestAPI。我试图在CodeIgniter中实现REST API,并使用了菲尔·斯特金的rest客户端和rest服务器。我看了一些教程,并成功地实现了Rest-Server部分(与Chrome的Rest Client APP进行了检查)。但是,为了实现Rest-Client,我遇到了一些麻烦。

我需要有cURL和CodeIgniter的cUrl库吗?如果是,我应该如何设置?

我也观看了Phil Sturgeon的本教程,但在本教程中,他只使用Rest客户端函数调用服务器。但没有定义放在哪里。这是密码

function rest_client($id){
    $this->load->library('rest', array(
        'server' => 'http://localhost/rest/index.php/restgetcontroller/',

    ));

    $user = $this->rest->get('user', array('id' => $id), 'json');

    echo $user->name;
}

如果太简单,我很抱歉。

谢谢你

编辑:我制作了一个客户端控制器,并在那里放置了一个方法来调用它。但是当我加载页面时,我得到了这个错误。

Call to undefined method CI_Loader::spark()

共有2个答案

史绍晖
2023-03-14

调用RESTful API,您需要CURL,有一个名为Guzzlehttp的库来更有效地使用CURL。

您可以使用作曲家来安装库,或者简单地下载zip并在您的控制器中要求它。

用法示例:

    try {
        $guzzleHttp = new GuzzleHttp\Client([
            'verify' => false
        ]);

        $http_response = $guzzleHttp->request('GET', 'http://localhost/rest/index.php/restgetcontroller/');
        $response = json_decode($http_response->getBody()->getContents());

        return $data;
    } catch (Exception $e) {
        log_message('error', $e->getMessage());
        return false;
    }
怀浩大
2023-03-14

您可以在需要从API检索值的任何位置使用。

$user将具有一个可用于您的目的的值。

基本上,您将在过去使用模型的地方使用应用编程接口,因为现在与数据库的交互是通过应用编程接口进行的,而不是直接来自控制器。

 类似资料:
  • 我尝试为我的网站提供文件上传/下载服务,并且尝试使用openstack中的对象存储。问题是,我通过php和openstack PHPSDK做这件事没有问题,但是当我试图通过一些javascript做这件事时,我找不到一个好的sdk或方法。我没有使用node,我有一个php服务器和一个javascript客户端。我想直接从javascript客户端上传或下载文件。我不希望文件通过php服务器传输。我

  • 我已经按照创建新应用程序所需的步骤进行了操作,并获得了使用者密钥、密钥对以及令牌访问详细信息。现在,我想使用chrome Postman客户端调用Twitter Rest API。 我应该如何将客户密钥、机密、令牌等详细信息传递给请求?我尝试过将它们作为标头传递,也尝试过通过在postman客户端中选择OAuth1.0选项来传递它们,但我遇到了错误:

  • 创建okhttp3客户端,使用sni地址访问web服务器,但握手失败,错误消息为“javax.net.ssl.SSLHandShakeException:握手期间远程主机关闭连接”。 有人知道如何在okhttp3客户端代码中使用sni地址吗?

  • 莴苣支持这种开箱即用的群集/分片吗?如果是,如何将其配置为使用客户端散列?

  • 问题内容: 我正在编写django应用程序,该应用程序应充当MQTT发布者和订阅者。 我应该在哪里启动Paho客户端并运行loop_forever()函数。 应该在wsgi.py中吗? 问题答案: 更新: 如果您需要在Django的多个线程运行,那么发布您的Django应用程序的信息,您可以使用辅助功能从发布泛美卫生组织的模块- https://eclipse.org/paho/clients/p

  • 这是我的PHP应用程序访问CIRest库的代码。当我禁用api键时,它看起来很好。这是json结果如下: 当我尝试在rest库中启用api密钥时。我收到这个 正在我的终端上尝试: 我知道了 卷曲 关于PHP 测试。php 我是不是漏了什么?