问题标签 [codeigniter-restserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
727 浏览

codeigniter - Codeigniter、REST_Controller 和 Backbone.js 不说话

使用Phil Sturgeon 的REST_Controller

Backbone.js 集合:

Codeigniter 控制器:

通过 Chrome Inspector 输出的标头:

两个问题:

第一个很明显,在为 Codeigniter 控制器定义 URL 时得到 500。我是否错误地定义了 URL?

第二个令人困惑,我试图从库中自动加载 REST_Controller.php,当我运行上面的代码时,我得到一个空白浏览器,Chrome 检查器中也没有任何内容。

非常感谢任何指导。

0 投票
1 回答
468 浏览

backbone.js - 使用backscorejs模板在underscorejs模板中迭代_.each时获得未定义

我正在使用库 philsturgeon/codeigniter-restserver 获取 JSON 当我检查控制台的响应部分时,我得到了返回的正确 JSON 值,例如

在前面,我希望这些值显示在模板中。但它只会{"readyState":1}在我这样做时返回<%= JSON.stringify(ledgers) %>

我从我的视图中调用模板,如下所示:

我的 REST 控制器功能如下所示:

0 投票
2 回答
4626 浏览

ajax - codeigniter rest api 和 ajax

我正在尝试访问我创建的 rest api。当我输入以下内容时,它工作得很好:

我得到了正确的 json 响应。现在我有一个网站,只是想使用 ajax 访问其余的 api。这是代码:

现在,当我使用此代码时,我得到一个 404 not found 响应。当我到达那个 url 时,我知道一个事实,我打算得到一个 json 响应。这是来自其余 api 的我的控制器:

0 投票
1 回答
1710 浏览

backbone.js - 如何在backbonejs中获取模型的最新插入ID

我有一个设置,我通过表单动态添加模型。相同的数据被插入到表的行中。一旦插入该行,我就会在该行上附加一个删除按钮。

现在,当我尝试删除插入的行时,我无法删除,因为该特定模型没有附加唯一 ID,因此在 DELETE 请求中没有发送 ID。但是一旦我通过获取来刷新整个集合,它就可以工作了。

我尝试使用这样的 cid 来获取整个模型:

这行不通。我正在为 codeigniter 使用 phil sturgeon REST API。

编辑:

这里 $Q 是这样填充的:

作为回应,我得到这样的数据:

所以它也不是正确的 JSON 格式。我应该怎么办?

0 投票
2 回答
13292 浏览

php - Codeigniter 路由和 REST 服务器

我正在尝试为我的 API 实现以下 URL(我正在使用 Codeigniter 和 Phil Sturgeon 的REST 服务器库):

我不希望 URL 有一个尾随的“索引”

当我像这样定义路由时,这根本没有问题:

一切都按预期工作。

我的问题是我需要额外的 URL 段,如下所示:

上面的示例有效,但以下示例无效:

我收到以下错误:{"status":false,"error":"Unknown method."} 显然我的控制器中没有limit方法。

如何设置我的 routes.php 配置文件以使这些 URL 正常工作?

任何帮助深表感谢!

0 投票
2 回答
19094 浏览

codeigniter - Phil Sturgeon 的 Codeigniter Restserver 和 Backbone.js 中的 HTTP OPTIONS 错误

当我尝试将模型保存到位于另一个主机/URL 上的 restful Web 服务时,我backbone.js的应用程序抛出 HTTP OPTIONS not found 错误。

根据我的研究,我从这篇文章中收集到:

一个请求会不断地发送一个 OPTIONS http 请求头,而根本不会触发 POST 请求。

显然,带有“对用户数据造成副作用”的请求的 CORS 将使您的浏览器在实际发送您预期的 HTTP 请求方法之前“预检”带有 OPTIONS 请求标头的请求以检查批准。

我试图通过以下方式解决这个问题:

  • 将 Backbone 中的 emulateHTTP 设置为 true。

Backbone.emulateHTTP = true;

  • 我还允许在标头中允许所有 CORS 和 CSRF 选项。

    header('Access-Control-Allow-Origin: *');
    header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept"); header("Access-Control-Allow-Methods: GET, POST, OPTIONS");

Backbone.emulateHTTP引入代码行时应用程序崩溃。

有没有办法响应 CodeIgniter RESTServer 中的 OPTIONS 请求,还有其他替代方法可以允许从谈话的地方禁用此请求吗?


在 Github 上发现了这个作为一种解决方案。我不确定我是否应该使用它,因为它似乎有点过时了。

0 投票
1 回答
1343 浏览

codeigniter - 主干的 Codeigniter 休息问题

我刚开始使用 Phil Sturgeon 编写的 rest 库。我通过编写一些简单的示例开始使用它。我缺少“发布”和“获取”工作,但不适用于放置和删除。根据下面的代码,我有一些问题。

在我的 CI REST 控制器中

基本上,当我保存模型或获取模型时,将调用控制器中的 get 和 post。使用模型中指定的 id,我可以使用 model.save() 和 model.destroy() 向服务器发出放置或删除请求。但是,我收到了服务器错误。看起来 index_put 或 index_delete 不能被调用。有谁知道我可以如何处理:

  1. 将请求放入控制器
  2. 在控制器中删除请求
  3. 获取指定 id 的单个记录

从 git 中,我只看到他列出了 index_post 和 index_put。没有 index_put 和 index_delete 演示。任何人都可以帮助我吗?谢谢

0 投票
1 回答
223 浏览

codeigniter - 获取 JSON 数据,但未将其加载到 Ember.js 中的视图中

我正在根据控制台获取 JSON,但我不断收到此错误,

而这个错误,

这是一个示例 JSON 响应,

这是我的 app.js,

需要注意的一点是,我在后端使用了 Phil Sturgeon 的 Codeigniter RestServer 库。我的代码可能有什么问题还是后端有问题?

0 投票
2 回答
776 浏览

php - 如何将 json 字符串发送到 phil sturgeon 的 Rest Controller?

这个问题可能很愚蠢。我想知道是否可以将像 {"type":"kissme", "who":"john benet"} 这样的字符串作为发布请求发送到休息控制器。

我知道发布数据必须作为请求正文作为 somekey=somevalue&otherkey=othervalue 发送。在接收时,我们参考密钥来获取数据。但是我们如何发送任何字符串而不分配给像 json data 这样的键呢?如果可以发送,如何接收?

谢谢你,阿比亚

0 投票
1 回答
2805 浏览

php - CodeIgniter 无法加载 REST 库

我正在尝试设置 Philip Sturgeon 的 REST 库。我完全按照自述文件告诉我的去做:

application/libraries/Format.phpapplication/libraries/REST_Controller.php文件拖放到应用程序的目录中。要么自动加载REST_Controller类,要么require_once在控制器顶部将其加载到作用域中。此外,从应用程序的配置目录中的application/config复制rest.php文件。

我将三个文件拖到相应的文件夹中。我还在 Nettus 上查看了这篇文章:http: //net.tutsplus.com/tutorials/php/working-with-restful-services-in-codeigniter-2/

我尝试使用以下方法自动加载它:

我也试过

最后我尝试了:

它们都不起作用。另外我很确定我正在使用 CodeIgniter 2.1.4,因为我是从主网站下载的。

有谁知道发生了什么?

他们不工作,我的意思是服务器崩溃了(我使用 MAMP)。