2012-01-12 15 views
0

Multipart PostにHttpWebRequestを使用して、イメージをバイト配列の形式でサーバーにアップロードしています。応答のポストの詳細を含むjson文字列を受け取ることになっています。しかし対照的に、私はポストの成功または失敗にかかわらず、レスポンスコードとして「OK」を返すだけです。誰もが私のためにこれを助けることができます。マルチパートの問題

私はポストに次のコードを使用しています。

Dictionary<string, object> postParam; 


public void SubmitPost() 
    { 

     HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(new Uri(url, UriKind.Absolute)); 
     myRequest.Method = "POST"; 
     myRequest.ContentType = string.Format("multipart/form-data; boundary={0}", boundary); 
     myRequest.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), myRequest); 
    } 


    public string url 
    { 
     get 
     { 

      return "URL"; 

     } 
    } 



    string boundary = "----------" + DateTime.Now.Ticks.ToString(); 


    private void GetRequestStreamCallback(IAsyncResult asynchronousResult) 
    { 
     HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState; 
     Stream postStream = request.EndGetRequestStream(asynchronousResult); 


     writeMultipartObject(postStream, postParam); 
     postStream.Close(); 

     request.BeginGetResponse(new AsyncCallback(GetResponseCallback), request); 

    } 
    string res; 
    private void GetResponseCallback(IAsyncResult asynchronousResult) 
    { 
     HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState; 
     HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult); 

     Stream streamResponse = response.GetResponseStream(); 

     StreamReader streamRead = new StreamReader(streamResponse); 
     streamResponse.Close(); 
     streamRead.Close(); 

     res = response.StatusCode.ToString(); 

     response.Close(); 

    } 

RESの値は常にあなたがstreamReadからの応答を読み取る必要が

答えて

1

"OK" です。 StatusCodeは、データがアップロードされたということだけです。

+0

thanx @ Ku6opr ...それは働いた –