Ich arbeite mit einem iOS-Typ. Er möchte Bilder über WebAPI ASP.NET hochladen. Ich muss anrufen, um diese Bilder zu empfangen.
Er sagte, dass er AFNetworking verwendet, um Daten über AFMultipartFormData
zu senden. Meine Frage ist, wie kann ich das an meinem Ende erhalten? Soll ich die Daten im JSON-Format aufnehmen? Oder welche Maßnahmen müssen zu diesem Zweck ergriffen werden? Ich möchte den ganzen Prozess wissen, da dies das erste Mal ist, dass ich mit MultipartFormData
arbeite.
UPDATE
auf die Antwort Basierend benutzte ich diese:So empfangen Sie MultipartFormData auf ASP.NET C#
[HttpPut]
public IHttpActionResult GetPatientFilesAction(int id, Model.Patients.PatientFiles patientFile)
{
Model.Patients.PatientFiles pFile=new Model.Patients.PatientFiles();
try
{
HttpPostedFile xmlFile = HttpContext.Current.Request.Files[0];
var fileForm = HttpContext.Current.Request.Form;
var fileKey = HttpContext.Current.Request.Form.Keys[0];
string[] jsonformat = fileForm.GetValues(fileKey);
pFile = Newtonsoft.Json.JsonConvert.DeserializeObject<Model.Patients.PatientFiles>(jsonformat[0]);
}
catch (Exception ex)
{
pFile.ErrorMessage = ex.ToString();
}
return Ok(pFile);
}
Aber der iOS Kerl bekam:
Anforderung fehlgeschlagen: nicht unterstützten Medientyp (415)
Schreiben Sie einen empfangenden Web-API-Controller ?, oder rufen Sie ihre bestehenden Web API Endpoint? – uk2k05
Es ist so ... Zuerst werden die Bilder hochgeladen ... nachdem alle hochgeladen wurden, kommt der Rest des JSON-Objekts von der IOS-App. –
Sie können sowohl Bild- als auch JSON-Daten in derselben HTTP-Anfrage senden. –