这是什么意思“在分配读取 0 后无法从 STDIN 读取 CGI 输入”?

发布于 2024-10-20 09:03:51 字数 1269 浏览 0 评论 0原文

我试图从 Java 的 CGI 页面读取响应,在该页面中我使用 apache commons HTTPClient 库发送带有适当参数的 POST 请求。 我已经像浏览器一样使用请求标头构建了请求,java代码以

**

响应

“无法从 STDIN 读取 CGI 输入 分配后读取0”

** 当在浏览器中使用相同的 CGI 工作正常时,可能是什么原因或者我缺少任何参数。

这是代码

post.addHeader("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3");
    post.addHeader("Host","www.XXX.yyy.in");
    post.addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
    post.addHeader("Accept-Language", "en-us,en;q=0.5");
    post.addHeader("Accept-Encoding", "gzip,deflate");
    post.addHeader("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7");
    post.addHeader("Keep-Alive", "115");
    post.addHeader("Connection", "keep-alive");
    post.addHeader("Content-Header","10000");
    post.addHeader("Referer", "http://www.abc.info/");
            post.getParams().setParameter("buttonSubmit.x", "90");
    post.getParams().setParameter("buttonSubmit.y", "12");
    post.getParams().setParameter("lccp_1", "123");
    post.getParams().setParameter("lccp_2", "4567890");
    post.getParams().setParameter("texNumber", "1234567890");
    // code which submits to the CGI page

Iam trying to read a response from a CGI page from Java where I send a POST request with appropriate params using the apache commons HTTPClient library.
I have framed the request with the request headers as like as browser, the java code responds with

**

"couldn't read CGI input from STDIN
after alloc read 0"

**
When the same CGI when used in the browser works fine what could be the reason for this or Iam missing any params.

Here is the code

post.addHeader("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3");
    post.addHeader("Host","www.XXX.yyy.in");
    post.addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
    post.addHeader("Accept-Language", "en-us,en;q=0.5");
    post.addHeader("Accept-Encoding", "gzip,deflate");
    post.addHeader("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7");
    post.addHeader("Keep-Alive", "115");
    post.addHeader("Connection", "keep-alive");
    post.addHeader("Content-Header","10000");
    post.addHeader("Referer", "http://www.abc.info/");
            post.getParams().setParameter("buttonSubmit.x", "90");
    post.getParams().setParameter("buttonSubmit.y", "12");
    post.getParams().setParameter("lccp_1", "123");
    post.getParams().setParameter("lccp_2", "4567890");
    post.getParams().setParameter("texNumber", "1234567890");
    // code which submits to the CGI page

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

醉生梦死 2024-10-27 09:03:51

http://hc.apache.org/httpcomponents-client-ga /tutorial/html/fundamentals.html

1.1.7.2。 HTML 表单

需要使用 setEntity() 吗? java 代码似乎正在检测请求的存在,但没有从中接收任何实际数据。

http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html

1.1.7.2. HTML forms

Do you need to use setEntity()? It would seem like the java code is detecting the presence of a request but is not receiving any actual data from it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文