为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 UnityWebRequest.Post() 将多个文件上传到服务器;

如何使用 UnityWebRequest.Post() 将多个文件上传到服务器;

PHP
喵喵时光机 2021-06-17 16:09:57
我正在尝试使用 UnityWebRequest.Post() 上传多个文件,这是我的代码。 public void UploadFiles() {     string[] path = new string[3];     path[0] = "D:/File1.txt";     path[1] = "D:/File2.txt";     path[2] = "D:/File3.txt";     UnityWebRequest[] files = new UnityWebRequest[3];     WWWForm form = new WWWForm();     for (int i = 0; i < files.Length; i++)     {         files[i] = UnityWebRequest.Get(path[i]);         form.AddBinaryData("files[]", files[i].downloadHandler.data, Path.GetFileName(path[i]));     }     UnityWebRequest req = UnityWebRequest.Post("http://localhost/File%20Upload/Uploader.php", form);     yield return req.SendWebRequest();     if (req.isHttpError || req.isNetworkError)         Debug.Log(req.error);     else         Debug.Log("Uploaded " + files.Length + " files Successfully"); }然而,文件是在目的地创建的,大小为 0 字节。这是我的 Uploader.php 代码 <$php   $total = count($_FILES['files']['name']);   $uploadError = false;   for ( $i = 0; $i < $total; $i++)   {     $tmpFilePath = $_FILES['files']['tmp_name'][$i];     if ($tmpFilePath != "")     {         $newFilePath = "Uploads/".$_FILES['files']['name'][$i];         if (!move_uploaded_file($tmpFilePath, $newFilePath))             $uploadError = true;     }   }   if ($uploadError)       echo "Upload Error";   else       echo "Uploaded Successfully"; ?>我使用这个 HTML 示例作为参考。而在浏览器中,HTML 代码完美运行。Unity 中存在问题。 <form enctype="multipart/form-data" action="Uploader.php" method="POST">     Choose a file to Upload:     <input type="file" name="files[]" multiple="multiple" /><br>     <input type="submit" value="Upload File" /> </form>
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 946 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信