PDA

View Full Version : POST کردن آبجکت در Restful API



imohsen
جمعه 09 فروردین 1398, 12:47 عصر
سلام
من از Asp.net 4.5 استفاده می کنم و قصد دارم با استفاده از یک وب سرویس REST آبجکتم رو POST کنم، نمونه مثالی برای این دارید؟ ضمنا آبجکت رو باید بصورت JSON در BODY ارسال کنم، البته تبدیل آبجکت به json رو مشکلی ندارم اما مابقیش رو نمی دونم. با استفاده از postman با متد POST اش این کارو با موفقیت انجام دادم و تست گرفتم.

imohsen
شنبه 10 فروردین 1398, 07:01 صبح
جواب رو پیدا کردم:

var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://plusserver.pluschap.com/plusservice/plustime/createplustime");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";


int year = Convert.ToInt32(txtPlusTimeYear.Text.Trim());
int month = Convert.ToInt32(txtPlusTimeMonth.Text.Trim());
int day = Convert.ToInt32(txtPlusTimeDay.Text.Trim());
DateTime georgianDateTime = new DateTime(year, month, day, new System.Globalization.PersianCalendar());
//var dte = DateTime.ParseExact(georgianDateTime.ToShortDateSt ring(), "Mmm dd, yyyy ", CultureInfo.InvariantCulture);
string dte = georgianDateTime.ToString("MMM dd, yyyy ");
String date = dte + txtPlusTimeHour.Text.Trim() + ":" + txtPlusTimeMinute.Text.Trim() + ":" + txtPlusTimeSecond.Text.Trim();
//pattern: Apr 25, 2019 05:37:25


using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = "{"enable":"true","title":"" + date + "","registerdate":"2020-10-10","establishtime":"2020-10-10"}";


streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
}


var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}