【问题标题】:Uploading a file from a php page to a Java Servlet将文件从 php 页面上传到 Java Servlet
【发布时间】:2011-11-03 03:06:44
【问题描述】:

我需要使用 PHP 页面将文件上传到 Java Servlet。 Java Servlet 使用 HTTP Post 上传文件。有没有办法做到这一点。你能否就如何做到这一点提出建议。我对用 PHP 上传文件很陌生,想了解这个概念以及如何实现我的上述功能。我现在没有任何代码可以放在这里供某人帮助我,因为我正在重新开始 PHP 文件上传。我也可以通过使用 jquery.post 来实现这一点吗?

【问题讨论】:

  • 澄清一下,你有一个 PHP 页面,其中有一个 form 并且在提交表单时,你想将表单提交给一个 java servlet 来进行上传?如果这是真的 BalusC 下面的答案就是您所需要的。如果你需要它看起来像 AJAX,那就用一个内框。

标签: java php jquery servlets


【解决方案1】:

PHP 不相关。这完全是关于它生成的 HTML 输出。只需确保 PHP 生成的表单看起来像这样(在浏览器中打开页面,右键单击并 查看源代码 进行验证):

<form action="http://example.com/uploadservlet" method="post" enctype="multipart/form-data">
    <input type="file" name="file" />
    <input type="submit" />
</form>

对于servlet端,只需检查How to upload files to server using JSP/Servlet?

如果您真的打算使用 JavaScript 异步发送 POST 请求,请查看 jQuery Form plugin,它通过 &lt;iframe&gt; hack 模拟异步文件上传,或 HTML5/XHR2,它原生支持异步文件上传。

【讨论】:

  • 因此,即使 servlet 在另一个域中,也会进行上传。例如,我的 php 托管在“www.abc.com”上,而我的 servlet 托管在“www.xyz.com”上。我还能用这个方法上传文件吗?
  • 是的。你还没有尝试吗?只有跨域XHR1才可以,如果对方不设置Access-Control-Allow-Origin标头是不行的,但是无论如何也不能用XHR1上传文件。
【解决方案2】:

不,jquery/ajax 不能上传文件。你可以使用 curl:http://dtbaker.com.au/random-bits/uploading-a-file-using-curl-in-php.html

【讨论】:

    猜你喜欢
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 2011-01-16
    • 2014-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多