private void OnMultipartFileUpload() { RestResponsePanel(); string filePath = Application.dataPath + "/Retrofit4Unity/Demo/Textures/error.png"; FileInfo fileInfo = new FileInfo(filePath); if (!fileInfo.Exists) { Debug.LogError("File not exits, please locate the file to upload"); return; } MultipartBody multipartBody = new MultipartBody(fileInfo); var ob = httpService.MultipartFileUpload(multipartBody, 123.45f, "abc"); ob.SubscribeOn(Scheduler.ThreadPool) .ObserveOn(Scheduler.MainThread) .Subscribe(data => { Debug.LogFormat("Received on threadId:{0}", Thread.CurrentThread.ManagedThreadId); arg1.ShowArg("file in binary", data.files.file); arg2.ShowArg("additional-form-data", data.formData.arg1); }, // onSuccess error => { Debug.Log("Retrofit Error:" + error); }); }
/// <summary> /// 设置上传的文件 /// content-type=multipart/form-data /// </summary> /// <param name="files">上传的文件信息</param> /// <returns></returns> public INoneBodyBuilder Form(IEnumerable <NamedFileStream> files) { var body = new MultipartBody(); body.AddFiles(files); _requestBody = body; ContentType("multipart/form-data; boundary=" + body.Boundary); return(this); }
/// <summary> /// 设置表单数据和上传的文件 /// content-type=multipart/form-data /// </summary> /// <param name="files">上传的文件信息</param> /// <param name="parameters"></param> /// <returns></returns> public INoneBodyBuilder Form(IEnumerable <NamedFileStream> files, IDictionary <string, object> parameters) { var body = new MultipartBody(); body.AddParameters(parameters); body.AddFiles(files); _requestBody = body; ContentType("multipart/form-data; boundary=" + body.Boundary); return(this); }
public void TestMultipartBody() { MultipartBody body = new MultipartBody(); Assert.Null(body.GetBody()); body.AddFiles(new List <NamedFileStream> { new NamedFileStream { FileName = "RestRequest.dll", Name = "files", Stream = File.OpenRead(Directory.GetCurrentDirectory() + "/RestRequest.dll") } }); body.AddParameters(new { id = 1 }); body.AddParameters(new Dictionary <string, object> { { "name", "jack" } }); Assert.NotNull(body.GetBody()); }
public IObservable <HttpBinResponse> MultipartFileUpload(MultipartBody body, float fieldArg1, string fieldArg2) { return(SendRequest <HttpBinResponse>(body, fieldArg1, fieldArg2) as IObservable <HttpBinResponse>); }