【问题标题】:How to upload a file from java to php如何将文件从java上传到php
【发布时间】:2021-10-22 05:18:57
【问题描述】:

我正在尝试使用 Java 和 PHP 将文件从我的计算机上传到我的网络服务器。

工作原理: 客户端,Java 应用程序使用以下方法将文件转换为字节数组:

byte[] bytes = Files.readAllBytes(file.toPath());

这个字节数组是通过 POST 请求发送到我的网络服务器的。

什么不起作用: php 文件接收到 bytearray 并无法将其转换为原始文件。 php代码:

$bytes = $_POST['file'];
$bytesStr = pack('C*', $bytes);
file_put_contents($_POST['fileName'], $bytesStr);

你知道如何解决这个问题吗?

【问题讨论】:

  • 如果您只是将原始字节转储到没有编码的 POST 正文中,那么您会在 php://input stream 中找到这些字节。如果您希望它被 PHP 的 POST 处理程序捕获,您需要将请求编码为 multipart/form-data

标签: java php post communication


【解决方案1】:

答案就是使用这个:

$bytes = $_POST['file'];
$bytesStr = pack('C*', ...$bytes);
file_put_contents($_POST['fileName'], $bytesStr);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-08
    • 2011-11-03
    • 2012-09-13
    • 1970-01-01
    • 2014-01-26
    • 2011-07-21
    • 2015-05-10
    相关资源
    最近更新 更多