将请求从Ruby发布到PHP。无法从PHP页面获取数据

将请求从Ruby发布到PHP。无法从PHP页面获取数据,php,ruby,http,post,Php,Ruby,Http,Post,我正在开发这个Ruby控制台应用程序,它应该向PHP文件发送POST请求,然后在控制台中打印结果。问题是PHP文件的结果没有在Ruby控制台应用程序中打印出来 这是我的Ruby代码: require 'net/http' data = {'command' => 'Test'} postData = Net::HTTP.post_form(URI.parse('http://localhost/mysite/bin/app/handler.php'), data) puts postDa

我正在开发这个Ruby控制台应用程序,它应该向PHP文件发送POST请求,然后在控制台中打印结果。问题是PHP文件的结果没有在Ruby控制台应用程序中打印出来

这是我的Ruby代码:

require 'net/http'

data = {'command' => 'Test'}
postData = Net::HTTP.post_form(URI.parse('http://localhost/mysite/bin/app/handler.php'), data)
puts postData.body
这是我的PHP文件:

<?php
echo $_POST['command'] . ' test';
?>


但这不会带来任何回报。我没有看到什么,这个代码有什么问题?我试图指向一个错误的URI,它在控制台中返回了一个
404
HTML页面,但使用正确的URI,它无法工作。

您的PHP服务器有问题。也许它没有在端口80(HTTP端口)上运行?当使用PHP的内置web服务器运行时,您的代码工作得非常好。也就是说,假设PHP脚本是server.PHP,下面的ruby代码放在client.rb中(注意URI中的:8000部分):

在端口8000上运行PHP内置服务器:

cd ~/test
php -S localhost:8000
并从命令行运行ruby客户端:

ruby client.rb
产生预期的“测试”结果

ruby client.rb