perl - 无法在 Mojo::UserAgent 请求中发布 json

标签 perl mojolicious mojo

我无法获得以下内容 Mojo::UserAgent调用将 JSON 发布到服务器:

use Mojo::UserAgent;
my $ua=Mojo::UserAgent->new;
my $json = $ua->post("localhost:6767" => {} => json =>{ val=>10 })->res->json;

在另一端使用假调试服务器 nc -l 6767给出以下输出:
POST / HTTP/1.1
User-Agent: Mojolicious (Perl)
Connection: keep-alive
Content-Length: 0
Host: localhost:6767 

不仅仅是 json方法,form ,整个 Transactor 似乎在我的两台机器上坏了。从文档:
perl -MMojo::UserAgent::Transactor -E 'say Mojo::UserAgent::Transactor->new->tx(PUT => "http://kraih.com" => json => {a => "b"})->req->to_string;'
PUT / HTTP/1.1
Content-Length: 4
Host: kraih.com

json

很难相信我的眼睛。我错过了什么?

最佳答案

您所有的盒子都使用 Mojolicious 3.85 或更高版本吗? UA form/json发电机很新,只有 3.85 or 2013-02-13 .

您也可以尝试删除空的 hashref(这将用于额外的 header ),除非有某种理由将它放在那里。

关于perl - 无法在 Mojo::UserAgent 请求中发布 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15415058/

相关文章:

perl - 集合格式 : multi not working with Perl Mojolicious Swagger2

Perl Mojolicious : chaining Promises

maven - 有什么方法可以将 FileSet 指定为命令行参数?

java - 什么是 Maven 中的 MOJO?

java - 构建时 Maven MOJO 执行失败

perl - 如何链接库以手动编译/安装 Perl 模块?

Perl Concat 字符串截断行首

performance - perl 是编写高性能页面的最快方法吗?

perl - 为什么 Perl 找不到我在 ClearCase 中的文件?

perl - Mojolicious、Mojo::DOM 通过包含文本选择标签