Unity file picker http

 avatar
unknown
plain_text
2 years ago
1.5 kB
4
Indexable
using UnityEngine;
using UnityEngine.Networking;
using System.Collections;

public class FilePickerUploader : MonoBehaviour
{
    public void OpenFilePicker()
    {
        StartCoroutine(OpenFilePickerCoroutine());
    }

    private IEnumerator OpenFilePickerCoroutine()
    {
        UniFilePicker.FilePicker picker = UniFilePicker.PickSingleFile("Pick a file");
        yield return picker;

        if (picker.Exception == null)
        {
            string filePath = picker.Result;
            if (!string.IsNullOrEmpty(filePath))
            {
                Debug.Log("Selected file: " + filePath);
                StartCoroutine(UploadFileCoroutine(filePath));
            }
        }
        else
        {
            Debug.LogError("Failed to pick file: " + picker.Exception.Message);
        }
    }

    private IEnumerator UploadFileCoroutine(string filePath)
    {
        byte[] fileData = System.IO.File.ReadAllBytes(filePath);
        string fileName = System.IO.Path.GetFileName(filePath);

        WWWForm form = new WWWForm();
        form.AddBinaryData("file", fileData, fileName);

        using (UnityWebRequest www = UnityWebRequest.Post("YOUR_URL_HERE", form))
        {
            yield return www.SendWebRequest();

            if (www.result != UnityWebRequest.Result.Success)
            {
                Debug.LogError("File upload failed: " + www.error);
            }
            else
            {
                Debug.Log("File upload complete!");
            }
        }
    }
}
Editor is loading...