HTTP Post Rails 4 期

HTTP Post Rails 4 Issue

提前感谢您提供的所有帮助。

我遇到了一个荒谬的问题,试图让我的 rails 4 应用程序从电子邮件解析中获取数据 API,该电子邮件向指定的用户发送 XML 响应url 在我的应用程序中。无论出于何种原因我似乎找不到,数据没有通过 HTTP Post 从 API.

进入我的应用程序

当我使用 requestb.in 和 Advanced Rest Client 进行测试时,一切正常,但是当我尝试将数据发送到我的应用程序时,没有成功。我目前正在通过 Pow.cx 发送到我的开发分支,所以它有一个特定的 url 可以发送到。我一直在使用 google 的 Advanced Rest Client 和 requestb.in 进行测试,并使用 requestbin 我没有问题让数据显示在 Advanced Rest Client 上,但是它不会进入我的应用程序.任何帮助将不胜感激。谢谢!!

我的路线:

get 'worldmate/receive', to: 'worldmate#receive'
post 'worldmate/receive', to: 'worldmate#receive'

在我的控制器中:

require 'nokogiri'
require 'net/http'
require 'open-uri'
require 'json'

class WorldmateController < ActionController::Base

def receive
    @request = request
    @xml = @request.body
    @string = @request.body.read
    @size = @request.body.size
end

我的 erb:

<p> Request: <%= @string %> <p>
<br>
<p> Less Detailed Request: <%= @xml %> </p>
<br>
<p> Size: <%= @size %> </p>

我不知道为什么我的应用程序没有接收这些数据。当我使用 Advanced Rest Client 发送 post 请求时,它工作得很好。非常感谢任何帮助。非常感谢。

我的猜测是您已将电子邮件解析服务配置为 POST 数据到 URL 只能从您的本地系统访问,例如 pow.cx 样式“ .dev" URL.

之所以使用您的测试实用程序,是因为我假设测试客户端也在您的本地计算机上,因此您的本地服务器可以从那里寻址。

我解决这个问题的方法是使用隧道。 Ngrok 是一个不错的低配置隧道工具,但是有许多解决方案可以让您的本地开发环境可以从 Web 访问以进行测试。