我正在将产品上传到采用 HTTP/XML 的后端系统 一切正常……我发送了产品,结果我得到了惊人数量的 XML。令人惊叹的是它几乎什么都没有。一些包含其他标签的标签,包含成功。
果然信息够好吗??:)
日期戳会很好,并且是我老板要求的。我需要一种方法来记录发送“成功”的时间。不是在我收到它时,因为我的时间戳可能与服务器的时间戳不匹配。
我使用 SOAP-UI 工具来发送原始 XML,因为它允许我相当快速地更改 XML 并测试它是否有效。在原始响应中,我看到了发送响应的服务器和时间。
这是原始响应中的内容。
HTTP/1.1 200 OK
Date: Thu, 04 Jul 2013 23:46:00 GMT
Server: Apache
Set-Cookie: PHPSESSID=XXXXXXXXXX; expires=Fri, 05-Jul-2013 00:01:00 GMT; path=/enterprise11301; domain=XXXX.net.nz; secure; HttpOnly
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: CUSTOMER=deleted; expires=Wed, 04-Jul-2012 23:45:59 GMT; path=/enterprise11301; domain=staging.XX.net.nz; secure; httponly
Set-Cookie: CUSTOMER_INFO=deleted; expires=Wed, 04-Jul-2012 23:45:59 GMT; path=/enterprise11301; domain=staging.XX.net.nz; secure; httponly
Set-Cookie: CUSTOMER_AUTH=deleted; expires=Wed, 04-Jul-2012 23:45:59 GMT; path=/enterprise11301; domain=staging.XX.net.nz; secure; httponly
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 282
Content-Type: text/xml; charset=UTF-8
因此,当我在 ruby/rails 中发送完全相同的内容时,我想要该信息这是我用于发送和获取响应的代码。
url = URI.parse( @credentials[:endpoint] );
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = false
http.verify_mode = 0
request = Net::HTTP::Post.new(url.path);
request.body = @xml
response = http.start { |http_runner| http_runner.request( request ) }
那么关于如何扩展它以访问 RAW 有什么想法吗?