MVC 프로젝트에 웹 API 컨트롤러를 만들었습니다. 이 컨트롤러에 POST를 시도 할 때마다 파일 다운로드가 시작되며 그 이유는 확실하지 않습니다. URL을 통해 API 컨트롤러로 이동하거나 양식 게시를 통해 완료되면 발생합니다.웹 API 컨트롤러 POST가 클라이언트에서 파일 다운로드를 시도합니다.
게시물을 통해 파일을 업로드하는 것은 매우 간단한 시나리오입니다.
다음은 컨트롤러 코드입니다. 어떤 아이디어? 여기
public class UploadController : ApiController
{
public async Task<List<string>> Post()
{
// Verify that this is an HTML Form file upload request
if (!Request.Content.IsMimeMultipartContent("form-data"))
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
// Create a stream provider for setting up output streams that saves the output under c:\tmp\uploads
// If you want full control over how the stream is saved then derive from MultipartFormDataStreamProvider
// and override what you need.
MultipartFormDataStreamProvider streamProvider = new MultipartFormDataStreamProvider("c:\\tmp\\");
var task = await Request.Content.ReadAsMultipartAsync(streamProvider);
return new List<string>();
}
클라이언트 코드 :
<!DOCTYPE HTML>
<html>
<head>
<title>HTML5 Multiple File Upload Sample</title>
</head>
<body>
<form action="http://localhost:8080/api/upload" enctype="multipart/form-data" method="POST">
What is your name?
<input name="submitter" size="40" type="text"><br>
What files are you uploading?
<input name="data" type=file multiple>
<br>
<input type="submit" />
</form>
</body>
</html>
이 컨트롤러 작업을 어떻게 부르셨습니까? 문제가 서버가 아닌 클라이언트 코드에 있다고 의심됩니다. –
목록을 반환하는 이유는 무엇입니까()? –
bluetoft
클라이언트 코드로 업데이트됩니다. 목록 반환은 테스트 코드 일뿐입니다. –
user1060500