2012-01-28 56 views

回答

4

簡單地使用JSON序列化數據,並將其作爲POST請求寫入服務器。以下是我在其中一個應用中執行的操作:

private static IObservable<T> GetDataAsync<T, TRequest>(TRequest input, string address) 
{ 
    var request = HttpWebRequest.Create(address); 
    request.Method = "POST"; 

    var getRequestStream = Observable.FromAsyncPattern<Stream>(
     request.BeginGetRequestStream, 
     request.EndGetRequestStream); 

    var getResponse = Observable.FromAsyncPattern<WebResponse>(
     request.BeginGetResponse, 
     request.EndGetResponse); 

    return getRequestStream() 
       .SelectMany(stream => 
       { 
        try 
        { 
         using (var writer = new StreamWriter(stream)) 
          writer.WriteLine(JsonConvert.SerializeObject(input)); 
        } 
        catch 
        { 
         // Intentionally ignored. 
        } 

        return getResponse(); 
       }) 
       .Select(webResponse => 
       { 
        using (var reader = new StreamReader(webResponse.GetResponseStream())) 
         return JsonConvert.DeserializeObject<T>(reader.ReadToEnd()); 
       }); 
} 
+0

謝謝!我可以知道如何發佈json數據,例如:JSONDATA:{「metaData」:{「appId」:「..」,「appVersion」:「..」},「searchData」:{「type」:「KEY_SEARCH」, 「術語」: 「07391905」, 「緯度」: - 999.0, 「經度」: - 999.0, 「格式」: 「JSON」, 「filterValues」:[]}, 「用戶數據」:{ 「權威」: 「USER」 ,「加密」:「3」}} – 2012-01-30 11:14:32

+0

請幫幫我,如何發佈上面的json數據。我的網址是.php – 2012-01-30 12:17:22

+1

如果你無法理解絕對的基本知識,那麼你應該回去再練習Hello World。 – 2012-01-30 12:21:15