问题标签 [slim-3]

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 投票
1 回答
406 浏览

php - 扩展控制器类时出现 Slim RuntimeException

错误是:

致命错误:未捕获的异常“RuntimeException”与消息“输出缓冲区中的意外数据。也许你在开场前就有角色

我已经构建了一个非常简单的控制器类来处理我正在处理的 MVC 的路由和渲染。我在容器中注册了所有控制器并设置了调用它们的路由,就像'className:methodName'它正在工作一样。尽管每个控制器都需要一个构造函数来设置容器,以便我可以呈现 php 视图。这似乎是一件好事,所以我做了一个抽象类

从字面上看,只是抽象层没有改变,但这是发生上述错误的时候。

我可以通过添加以下设置来修复:

这很好,因为我仍然可以工作,但我不确定 A) 为什么设置内容长度是增加安全性还是什么?B)为什么这种抽象会导致这种情况发生,我应该做一些不同的事情吗?

0 投票
1 回答
270 浏览

php - 创建 php 购物车时出现 Slim 3 框架错误

您好我一直在尝试通过 php 创建一个购物车。为此,我一直在使用 Slim 3 框架,但是我遇到了一些错误,我似乎无法理解问题所在。任何帮助表示赞赏,谢谢!

来自 Slim 的错误日志

路由.php

该错误似乎与以下 get 函数的语法有关。

容器.php

0 投票
2 回答
1509 浏览

php - Slim 3 - 斜线作为路由参数的一部分

我需要使用可以包含斜杠 / 的参数来编写 URL。比如经典/hello/{username}路线。默认情况下,/hello/Fabien将匹配此路由但不匹配/hello/Fabien/Kris. 我想问你如何在 Slim 3 框架中做到这一点。

0 投票
1 回答
57 浏览

php - 尝试 catch 块不适用于成功返回

在我的代码中,当函数抛出错误(例如,组织名称是必需的或已经存在)时,catch 块可以正常工作。但是在成功的情况下,即使插入了相应的组织,我也得到了 200 的状态和错误消息。我的代码中有什么错误。

insertTenancy 是 Mycontroller 中编写的函数。

在 routerContainer 中编写的以下函数

0 投票
1 回答
1377 浏览

php - 如何在路由参数中发送 URL?

我已经定义了这样的路线:

当我传递一个没有http://但给我一个带有or的404 page not found-Page的 url 时,它工作正常。我也尝试过使用 url 编码的字符串,但给出了同样的错误:http://https://

我正在使用 Slim 版本 3.1。

0 投票
1 回答
48 浏览

php - Eloquent :: 一对一在两个表中都处于活动状态,但具有特定角色

我试图只返回具有在两个表中都处于活动状态的角色(role_id 5 和 6)的用户的特定配置文件。如果我也可以按 first_name ASC 排序(用户表),那也很好。

我的用户模型

我的个人资料模型

我的用户控制器

所以我得到了我所有的记录就好了。我得到了所有的配置文件,但不是用户表中仅属于 role_id 的 5 和 6 的配置文件。此外,如果我在用户表中将 is_active 设置为 0,它们仍然会显示。但是,如果我在配置文件表中设置 is_active,它们不会。我需要它们不显示 User 或 Profile 表是否将这些行设置为非活动。因为您可以拥有一个用户,但他们可能不想要一个活动的个人资料。

0 投票
1 回答
9255 浏览

php - url 中的可选参数 - Slim 3

我有一个非常简单的问题。我正在使用 Slim 3 构建一个 RESTfull api。

这是怎么回事:

但不是这个:

事实上后者不编译。

0 投票
2 回答
797 浏览

php - Slim 3 - 如何在路由中使用 or-operator?

我怎样才能在路线上做“或”?

例如,/about并且/fr/about指向相同的对象/类/方法。所以而不是:

我试过这个:

我收到此错误:

任何想法如何解决这个问题?

或任何避免重复代码的解决方案?

0 投票
1 回答
133 浏览

php - 图像仅在流式传输(?)到客户端时加载某些时间

我一直在编写一个网络应用程序一段时间,并且在提供图像方面遇到了一些问题。

我的代码使用 ,从服务器中提取文件数据file_get_contents,并使用 Slim 的Request对象write方法输出文件的内容,设置标题。对于大多数文件,这是可行的,但是较大的图像通常只显示图像尺寸的灰色轮廓(在移动和桌面 Chrome 中测试)。Requests error out with ERR_SPDY_PROTOCOL_ERROR,这让我相信这是一个 HTTP 2 问题(我测试的服务器侦听 HTTP 2 连接,使用listen [port] http2其 nginx 配置中的指令设置),但是我试图降级响应中使用的 HTTP 版本使用 PSR-7 的RequestInterface方法withProtocolVersion并没有改变。

我知道使用file_get_contents然后输出所述内容是一种非常迂回的做事方式,但这是我知道允许此应用程序的用户任意设置上传文件的位置的唯一方法。

这是我的代码中最相关的部分,其中$filepath是用户请求的文件的路径。此代码对除大图像之外的所有文件都按预期工作。

0 投票
3 回答
1644 浏览

routing - Slim3 从 CSRF 中间件中排除路由

我正在构建一个基于 slim3 框架的网上商店。我需要处理服务器到服务器的 POST 请求以确认付款是否成功。我将 csrf 添加到容器中,如下所示:

并将其添加到应用程序中,如下所示:

而且效果很好。但是现在我需要能够为某个路由添加一个例外,这样我才能得到他们发送的发布请求。到目前为止,我找不到可行的解决方案。

有什么建议吗?