0
나는 웹 서비스 메서드 인 uploadFile.the 메서드를 사용하여 매개 변수를 base64str로 가져 와서 지정된 주소에 파일로 기록해야합니다. 하지만 문제가 있습니다.이 방법으로는 350KB 이상의 파일을 업로드 할 수 없습니다. 그렇지 않으면 zip, jpg, txt와 같은 300KB 미만의 파일을 업로드 할 수 있습니다. 또한 350KB 이상의 파일을 업로드하려고하면 서버에서 계속 작동하는 프로세스입니다.파일 게시 문제 - ASP.Net
프로세스 :
Image Name : w3wp.exe, UserName : ASP.Net v4.0, CPU : 50, Description : IIS Worker Process
때때로 서버 CPU가 간다 ~ 100 %
코드 :
* encodedFile = Base64Str as format
string postString = string.Format("userName={0}&userVendor={1}&vendorKey={2}&base64FileStr={3}&guid={4}&fileName={5}", "kadi", "şifre", "key", encodedFile, guid, strFilename);
string localHttpPostUrl = userGatewayAddress + "uploadFile";
ASCIIEncoding encoding = new ASCIIEncoding();
Stream newStream = null;
HttpWebResponse response = null;
Stream streamResponse = null;
StreamReader streamRead = null;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(localHttpPostUrl);
request.ContentType = "application/x-www-form-urlencoded";
request.Method = "POST";
byte[] buffer = Encoding.UTF8.GetBytes(postString);
request.ContentLength = buffer.Length;
newStream = request.GetRequestStream();
newStream.Write(buffer, 0, buffer.Length);
newStream.Close();
response = (HttpWebResponse)request.GetResponse();
streamResponse = response.GetResponseStream();
streamRead = new StreamReader(streamResponse);
Char[] readBuffer = new Char[256];
ret = string.Empty;
int totalCharCount = 0;
int count = streamRead.Read(readBuffer, 0, 256);
while (count > 0)
{
totalCharCount += count;
ret += new String(readBuffer);
count = streamRead.Read(readBuffer, 0, 256);
}
ret = ret.Substring(0, totalCharCount);
return ret;
}
catch (Exception x)
{
return x.Message;
}