ورود

View Full Version : نحوه ی ارسال مقادیر به یک برنامه تحت وب با کمک IdHTTP?



AlirezaBahredar
دوشنبه 22 بهمن 1386, 11:21 صبح
با سلام........
از دوستان کسی دقیقا با کامپوننت IdHTTP (از مجموعه کامپوننت های Indy)کار کرده که بتونه نحوی استفاده از این کامپوننت رو بگه.....خواهشا اگه کار کردید جواب بدید و از کلی گویی بپرهیزید و اجازه بدید دوستانی که در این زمینه مسلط هستند به این مطلب جواب بدند تا سریع تر به جواب برسیم....با تشکر
موفق باشید..........

vcldeveloper
دوشنبه 22 بهمن 1386, 14:34 عصر
از کلی گویی بپرهیزید و اجازه بدید دوستانی که در این زمینه مسلط هستند به این مطلب جواب بدند
سوال کلی جوابش هم کلی هست، غیر از اینکه آدم بیکار باشه و بخواد کل پروتکل HTTP و اجزای مختلف کامپوننت IdHTTP رو توضیح بده، که احتمالا خودش یه کتاب میشه.
برای ارسال مقادیر به یک Web Application یا داده ها در URL ایی که به سرور ارسال میشه درج میشند، یا با استفاده از متد Post به سرور ارسال میشند. برای ارسال داده با استفاده از Post باید داده را در یک TStrings یا یک Stream بریزید و یکی از متدهای Post را فراخوانی کنید. از این متد چندین Overload وجود داره. توضیحاتش هم در راهنمای Indy اومده. اگر مشکلتون با روش های ارسال داده در HTTP هست، باید به مستندات پروتکل مربوطه مراجعه کنید. زمانی که با IdHTTP کار می کنید، فرض این هست که با HTTP آشنایی دارید.

اگر مشکلتون چیز دیگه هست، با جزئیات مطرح کنید که بشه با جزئیات جواب داد.

موفق باشید

AlirezaBahredar
دوشنبه 22 بهمن 1386, 16:42 عصر
سوال کلی جوابش هم کلی هست، غیر از اینکه آدم بیکار باشه و بخواد کل پروتکل HTTP و اجزای مختلف کامپوننت IdHTTP رو توضیح بده، که احتمالا خودش یه کتاب میشه.


با سلام.....
فکر نمی کنم از سوال من حالت کلی بر داشت می شد.....در هر صورت منظور من این بودی که دوباره دوستان شروع به گفتن این مطلب نکنند که"با Indy میشه....در مثالهای Indyوجود داره...."
و توضیح این مطلب که اصولا بحث برنامه های تحت وب جهت دریافت یا ارسال یک دیتا همانند Usernameو Passwordهیچ ارتباطی با بحث پروتکل HTTPبا اون مفهومی که شما مطرح کردید به هیچ عنوان نداره(!!!!!!!!!!!!!!!!!!)
دوست خوبم آقای کوشا در یک مثال نحوه ی استفاده کردن از این کامپوننت رو بصورت اجمالی بررسی کرده...من می خواستم بدونم چجوری میشه در این کامپوننت نوع متد ارسال (Submit ) رو مشخص نمود.ثانیا همیشه مقادیری ارسالی ما به یک وب پیج بصورت


ARequestContent.Add('login=' + edName.Text);

هستش؟
موفق باشید.........

vcldeveloper
دوشنبه 22 بهمن 1386, 17:05 عصر
بحث برنامه های تحت وب جهت دریافت یا ارسال یک دیتا همانند Usernameو Passwordهیچ ارتباطی با بحث پروتکل HTTPبا اون مفهومی که شما مطرح کردید به هیچ عنوان نداره
جالبه. پس به چی ربط داره؟!


همیشه مقادیری ارسالی ما به یک وب پیج بصورت
ARequestContent.Add('login=' + edName.Text);
هستش؟
باید ببینید Web Application شما چه متدی رو پشتیبانی میکنه. اون کدی که در بالا نوشتید داده را از طریق URL منتقل میکنه. مثل عبارت t = 94531 در آدرس زیر:
http://barnamenevis.org/forum/showthread.php?t=94531
همونطور که در پست قبلی هم گفتم، راه دیگه استفاده از Post هست.

tactools
سه شنبه 23 بهمن 1386, 09:40 صبح
سلام خدمت آقای کشاورز عزیز
خسته نباشید مدیر گرامی اگه لطف کنید بیشتر توضیح بدیم ممنون می شم

vcldeveloper
سه شنبه 23 بهمن 1386, 11:58 صبح
بیشتر توضیح بدیم ممنون می شمMethods GET and POST in HTML forms - what's the difference (http://www.cs.tut.fi/%7Ejkorpela/forms/methods.html)

مثال:
Uploading Files using Indy
(http://www.matlus.com/scripts/website.dll/Tutorials?DelphiTCPIP&IndyMultiPartFormData&5)