问题标签 [mojolicious]

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 回答
266 浏览

perl - 在 Mojolicious 控制器单元测试中将文件作为参数传递

我有一个文件上传应用程序。我想测试我的Upload控制器。为此,我如何将文件传递给我的测试?对于我的应用程序中的文件上传,我使用外部应用程序/插件(Flash/HTML5/HTML4)。

0 投票
0 回答
225 浏览

perl - Mojolicious 测试和 plackup 实时运行不同

有时当我运行测试时,我会得到以下信息。

Mojo 的文档似乎建议添加

但是,当我尝试将其添加到程序中时,我在plackup运行实例上收到此错误

超时的可能原因是由于通过使用 LWP 的客户端库运行的 HTTP 请求非常慢(尽管我尝试将 LWP 替换为AnyEvent::HTTP::LWP::UserAgent而没有任何真正的代码更改,只是传递一个不同的用户代理)

我想知道我可能会尝试做些什么来保持连接在测试中运行,我似乎对通过 chrome 的实时请求没有问题,或者我应该完全转向不同的方向?

0 投票
6 回答
3899 浏览

perl - Mojolicious - 无法使用 hypnotoad 启动应用程序

正如标题所说,我不知道为什么。唯一发生的是工作目录中出现的 hypnotaod.pid 文件。没有正在运行的进程,没有在定义的端口上监听。另外- morbo 一切正常。

编辑:我已经跟踪了这家初创公司,http ://pastebin.com/YWUSeMuu

EDIT2:查看上面的 strace 输出后,似乎 hypnotad 将另一个“.pl”附加到脚本文件中。我已将文件名更改为 myapp,冲洗,重复http://pastebin.com/NVK2rhu4

任何想法都非常受欢迎。

现在的代码只是教程测试代码

0 投票
1 回答
395 浏览

perl - 为什么 Mojolicious 会嵌套我的路线?

我的 Mojolicious 应用程序有一些自定义身份验证机制,我在一个名为的路由条件中实现它auth_permission

所以我的路线看起来像这样:

to()子句处理正确:给GET /objects我对象列表,并GET /objects/delete/42删除对象 42。

问题是view objects两个请求都检查了权限,即使第二条路由应该检查权限delete objects

原因似乎/objects/delete/42是下面的路径/objects/prefs与其他路线没有共同基础的路线不会出现同样的问题。

我目前的解决方法是将 for 的规则放在 for 的下面/objects /objects/delete/:id但这是 a) 不雅,并且 b) 当另一个开发人员编辑文件时会中断。我可以显式禁用在这种情况下看到的嵌套行为吗?

0 投票
2 回答
509 浏览

perl - UTF8 字符串部分无法识别

当我从 SQLite3 数据库中获取西里尔文文本时,在某些情况下 perl(或 Mojolicious,或 DBIx::Class - 我真的不知道)无法解码字节流。例如,给定文本:

输出将是:

为什么会这样?如何解决这个问题?

更新:我能够追踪这个问题的根源。看起来格式错误的字符串是从网页上的用户输入中获取的,并作为参数发送到 Controller 操作:code here

执行保存操作会产生以下日志:

更新 2:我使用 Morbo 作为开发服务器,我的应用程序布局包含meta标题:

更新 3:奇怪,但有时字符串被正确编码和显示:

如果我第二次做同样的事情,我会得到:

0 投票
1 回答
278 浏览

perl - Mojolicious 模板的测试覆盖率

在编写伽利略的过程中,我在模板 ( ) 中加入了一些逻辑.html.ep,没什么,只是一些。为此,我想知道是否可以将这些文件包含在测试覆盖率分析中。

我尝试了一些东西,最有希望的是

但这些文件仍未包括在内。也许这是不可能的,但也许有人有一些想法。

0 投票
1 回答
298 浏览

perl - 如何将 Perl sub 的返回值转换为 arrayref?

我尝试这样的代码:

getRows 是一个子函数名,代码在模板中工作。$rows 是一个数组。

我写这样的代码:

$rows 是一个 REF,这是错误的。

如果这样写代码:

$rows 是一个 HASH,这是错误的。

有没有办法将两行代码写成一个?

0 投票
3 回答
1316 浏览

perl - 如何向 mojolicious 路线添加多个 over 方法?

我有以下代码:

鉴于该路由,我可以通过使用 Mojolicious::Plugin::Authentication 设置的经过身份验证的检查到达用户路由。

我想在该路线上添加另一个“结束”。

不过,这似乎覆盖了经过身份验证的“过度”。

我尝试使用以下名称分解路线:

但这根本不起作用。两个'over'都没有被访问。

我的路由是 /user、/item 之类的东西,使用 MojoX::JSON::RPC::Service 设置。所以,我没有 /user/:id 之类的东西来设置子路由。(不确定是否重要)所有路由都像 /user,用参数发送。

我有这样的条件:

那就是 $r->route('/user')->over(access => 1); 中的“访问”

简而言之,路线在使用时可以正常工作:

但我无法添加第二条路线。

那么,在设置这些具有多个条件的路线时,我缺少什么?是否可以将多个条件添加到单个路由/route_name?

0 投票
1 回答
404 浏览

perl - 使用 Mojolicious 桥接时的深度递归

我定义了一个 Mojolicious 桥

我正在定义这样的路线

启动应用程序后,在 /usr/local/share/perl5/Mojolicious/Routes/Route.pm 第 23 行的子例程“Mojolicious::Routes::Route::AUTOLOAD”上出现错误 Deep recursion。

我不知道这里发生了什么。谁能帮我。

谢谢!

0 投票
2 回答
1264 浏览

perl - 密码中的特殊字符导致 Mojolicious UA 中的基本身份验证失败

以下程序在尝试访问需要基本身份验证的 https 网站时失败。

当我使用 MOJO_USERAGENT_DEBUG=1 运行时,我得到以下输出:

使用从 CPAN 更新的 Mojolicious 3.35。不幸的是,密码可能包含“特殊字符”(ascii #!@%^& 等),并且不能将密码更改为不包含 # 的内容。Web 服务器在 Web 浏览器中正确处理请求,因此我认为这不是 Web 服务器配置问题。

那么在 Mojo 中还有其他方法可以实现这一点吗?