مشکل درPost/Get متد HttpWebRequest

بازدید6.7kپست ها4آخرین فعالیت9 سال پیش
0
0

سلام.
این کد اچ ات ام ال:

<form method="post" action="/search.php">
        <input type="text" name="q" id="sfrm" value=""/></br>      
        <input type="submit" name="go" value="Search" id="search_button" />
        </form>

من با استفاده از WebBrowser میتونم با کدنویسی روی دکمه Search کلیک کنم(کدنویسی).
قبلا بلد بودم که حتی با HttpWebrequest هم اینکار رو کنم اما الان هرکاری میکنم نمیشه، میخوام تکست رو پر کنم بعد ارسالش کنم. واسه WebBrowser>
[CSHARP]
webBrowser1.Document.GetElementById("sfrm").SetAttribute("value", textBox1.Text);
webBrowser1.Document.GetElementById("search_button").InvokeMember("Click");

[/CSHARP]

یک سوال دیگه ام که داشتم اینه که چه موقع باید از متد Post و چه موقع باید از Get استفاده کرد؟ اگه نوع متد رو تعیین نکنم چی میشه؟

ممنون

0

سلام
اینطوری بنویس:
[CSHARP]
HtmlElement button = webBrowser1.Document.GetElementById("lButtonSearch");
button.InvokeMember("click");
[/CSHARP]

Post و Get در PHP
<br>

GET_$
از GET_$ برای دریافت اطلاعاتی که با متد GET که در تگ form مشخص شده استفاده میکنیم.
هنگامی که متد ارسال اطلاعات در تگ form رو روی GET تنظیم کنید (“method=”GET) اطلاعات در URL نمایش داده میشن بنابراین برای ارسال اطلاعات مهم مثل پسورد نباید از این متد استفاده بشه.
برای ارسال مقادیر بزرگ نباید از این متد استفاده بشه چون طول اطلاعات ارسالی نمیتونه بیشتر از ۲۰۰۰ کاراکتر باشه. در صورت رعایت نکردن این مهم با خطای Request-URI Too Large مواجه میشید.
POST_$
از POST_$ برای دریافت اطلاعاتی که با متد POST که در تگ form مشخص شده استفاده میکنیم.
برخلاف متد GET، در متد POST اطلاعات در URL نمایش داده نمیشن پس برای ارسال اطلاعات مهم مناسبه.
با استفاده از این متد میتونید حجم بسیار زیادی از اطلاعات رو ارسال کنید. البته بصورت پیشفرض حداکثر اطلاعات میتونه ۸ مگابایت باشه که در فایل php.ini مشخص شده، برای کم کردن محدودیت میتونید مقدار post_max_size رو افزاریش بدید.

<br>
0

علی جان ممنون اما من نمیخوام از WebBrowser استفاده کنم! میخوام از HttWebRequest استفاده کنم

0

دوباره سلام
تا جایی که من میدونم HttpWebRequest فقط میتونی درخواست بفرستی نمیشه کلیک روی دکمه رو شبیه سازی کرد

0

درود
آره با HttpWebRequest میشه درخواست فرستاد مثلا لاگین کردن توی سایت با ارسال درخواست post.

سوال برنامه نویسی دارید؟

ندونستن عیب نیست، نپرسیدن چرا!

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.