2017-11-11 9 views
-1

웹 API, 현재 웹 API가 다음과 같은 2 개의 등록 정보로 응답하는 JSON 객체입니다. I 'd : 1, FieldName : somename파일 스트림 및 json 객체를 웹 API의 단일 응답으로 응답하는 방법

이제는 기존 JSON 속성과 함께 FILE (.CERT) 파일 하나를 포함시켜야합니다.

어떻게 수행하나요?

[권한 부여] 및 파일 Base64String 변환을 이용하여 솔루션을 발견

[Route("getfileAndProperties")] 
public HttpResponseMessage GetTestFile() 
{ 
    HttpResponseMessage result = null; 
    var localFilePath = HttpContext.Current.Server.MapPath("~/timetable.cer"); 

    var p = new Person() {Id=1,userField="name"}; 
//need to include this Person object into response along with file. 
    if (!File.Exists(localFilePath)) 
    { 
     result = Request.CreateResponse(HttpStatusCode.Gone); 
    } 
    else 
    { 
     // Serve the file to the client 
     result = Request.CreateResponse(HttpStatusCode.OK); 
     result.Content = new StreamContent(new FileStream(localFilePath, FileMode.Open, FileAccess.Read)); 
     result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment"); 
     result.Content.Headers.ContentDisposition.FileName = "SampleImg";     
    } 

    return result; 
} 
+0

코드를 공유해주십시오. –

+0

@Div 덧글을 달았습니다. – user3711357

답변

0

JSON는 응답에 포함된다.

감사합니다.