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

CodeIgniterRest服务器集成

长孙逸仙
2023-03-14

我已经从github下载了CodeIgniter Rest服务器源代码https://github.com/chriskacerguis/codeigniter-restserver.

我已经根据自述文件集成,但我得到了一个错误的"无效的API密钥"与403禁止错误,当我调用像htttp://www.sitename.com:81/api/key/index生成第一次新的密钥并存储到数据库。

屏幕截图1:查看FF浏览器以及Google Chrome Windows 7-64位中使用的POSTMAN扩展中发生的错误的屏幕截图

下面是我的Rest中的代码。php

<?php 
defined('BASEPATH') OR exit('No direct script access allowed');
$config['force_https'] = FALSE;
$config['rest_default_format'] = 'json';
$config['rest_supported_formats'] = ['json','array','csv','html','jsonp','php','serialized','xml'];
$config['rest_status_field_name'] = 'status';
$config['rest_message_field_name'] = 'error';
$config['enable_emulate_request'] = TRUE;
$config['rest_realm'] = 'REST API';
$config['rest_auth'] = FALSE;
$config['auth_source'] = ''; //i set it as none/blank, default value set as 'ldap'
$config['auth_library_class'] = '';
$config['auth_library_function'] = '';
$config['rest_valid_logins'] = ['admin' => '1234'];
$config['rest_ip_whitelist_enabled'] = FALSE;
$config['rest_ip_whitelist'] = '';
$config['rest_ip_blacklist_enabled'] = FALSE;
$config['rest_ip_blacklist'] = '';
$config['rest_database_group'] = 'default';
$config['rest_keys_table'] = 'keys';
$config['rest_enable_keys'] = TRUE; //i set it as TRUE default value is FALSE
$config['rest_key_column'] = 'key';
$config['rest_limits_method'] = 'ROUTED_URL';
$config['rest_key_length'] = 40;
$config['rest_key_name'] = 'X-API-KEY';
$config['rest_enable_logging'] = TRUE;//i set it as TRUE default value is FALSE
$config['rest_logs_table'] = 'logs';
$config['rest_enable_access'] = FALSE;
$config['rest_access_table'] = 'access';
$config['rest_logs_json_params'] = FALSE;
$config['rest_enable_limits'] = FALSE;
$config['rest_limits_table'] = 'limits';
$config['rest_ignore_http_accept'] = FALSE;
$config['rest_ajax_only'] = FALSE;
$config['rest_language'] = 'english';

在路线中编码。php

$route['api/key/index'] = 'api/key/index'; // Generate First Time Key

有人能指导我如何为CIRest服务器生成这个第一次密钥吗?

如果有人能尽快给出这个问题的解决方案,这将非常有帮助,因为我从找到解决方案的两天起就一直试图解决这个问题,但没有取得任何成功(

共有1个答案

漆雕彬彬
2023-03-14

根据该图书馆的回购文件:

//By default, the HTTP will be X-API-KEY. This can be configured in config/rest.php.
$ curl -X POST -H "X-API-KEY: some_key_here" http://example.com/books
 类似资料:
  • 问题内容: 我的公司正在考虑更改连续集成服务器(我不会说我们现在拥有哪台服务器,因此无论如何我都不会歪曲您的回答:))我想知道是否有人提出建议?最佳的用户体验,维护难度等… 我们的代码全部使用Java,并且我们将ANT用作构建工具。 问题答案: 我最近实现了哈德森服务器。以前使用过Cruise Control, 我对Hudson感到非常满意,并且对它的易于设置和使用印象深刻。 与Cruise Co

  • 在 Node.js 服务器中使用时相当简单直接,例如Express: npm install express --save const Vue = require('vue') const server = require('express')() const renderer = require('vue-server-renderer').createRenderer() server.g

  • 可能是一个简单的方法, 我想要的是:我有一个监听传入连接的tcp服务器。当客户连接时,我希望以某种方式得到通知。TcpNetServerConnectionFactory内部有这样的信息"接受的连接..."。 有一个TcpConnectionSupport类,但是我找不到如何使用它的方法。我正在寻找类似的用户模式。 有什么办法可以做到吗?

  • 对开源 CI 服务器:CruiseControl、Luntbuild 和 Continuum 的调查 由于有许多持续集成服务(CI)服务器可以选择,所以很难决定哪个适应自己。在 让开发自动化 系列的第二篇文章中,开发自动化专家 Duvall 采用一致的评估标准和很多说明性示例,介绍了一些开源 CI 服务器,包括 Continuum、CruiseControl 和 Luntbuild。 在我脑海里,

  • 我有一个队列通道和一个带有轮询器的服务激活器,轮询器从该队列中读取数据。我希望配置为“我希望50个线程轮询该队列,每次轮询并返回消息时,在此线程上调用服务激活器指向的服务。” 该服务没有异步注释,但无状态,可以以并发方式安全运行。 下面的方法能做到吗?有没有其他首选的方法来实现这一点?

  • 问题内容: 我有一个角度应用程序,其中包含一个从示例中获取的保存按钮: 这对于客户端验证非常有用,因为当用户解决问题时它会变为false,但是我有一个电子邮件字段,如果另一个用户使用相同的电子邮件注册,则该字段设置为无效。 一旦我将电子邮件字段设置为无效,就无法提交表单,并且用户无法修复该验证错误。所以现在我不能再使用来禁用我的提交按钮。 肯定有更好的办法 问题答案: 我在几个项目中都需要这样做,