ajuang
一般會員
![](./myimg/board/mystar_empty.gif)
![](images/icon_photo_none.gif) 發表:7 回覆:11 積分:3 註冊:2004-08-30
發送簡訊給我
|
當我嘗試使用IdHTTP1->Post送資料時,會出現"405 Method Not Allowed".
我的問題是:
所有網頁都支援POST之類的命令嗎?如果不是,我們是否有任何方式去判斷呢?
|
RaynorPao
版主
![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif)
![](http://delphi.ktop.com.tw/download.php?download=upload/48c9d66ac5033_KTOP-%E5%8C%85%E5%AD%90%28%E7%9C%BC%E9%8F%A1%29-Q-100x100.jpg) 發表:139 回覆:3622 積分:7025 註冊:2002-08-12
發送簡訊給我
|
引言:
當我嘗試使用IdHTTP1->Post送資料時,會出現"405 Method Not Allowed".
我的問題是:
所有網頁都支援POST之類的命令嗎?如果不是,我們是否有任何方式去判斷呢?
ajuang 你好:
(1)不見得所有的網頁都支援 POST 的命令
(2)或許你可以直接利用 try...catch 來做判斷,例如:
szURL="http://www.abc.com/abc.asp">HandleRedirects=true;
TStringList *sl=new TStringList;
try
{
sl->Add("ID=1");
sl->Add("PWD=1");
try
{
szRet=IdHTTP1->Post(szURL, sl);
Memo1->Lines->Add(szRet);
Memo1->Lines->SaveToFile("post.htm");
}
catch(Exception &ex)
{
ShowMessage(ex.Message);
ShowMessage(IdHTTP1->ResponseCode);
//...do something...
}
}
__finally
{
delete sl;
}
}
(3)測試環境 Windows 2000 Server SP4, BCB 6.0 Update 4, Indy 9.0.14
(4)如果你想更新 BCB 中的 Indy 版本,可以參考以下這篇文章中的做法
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=25182
(5)你的程式在執行的時候,會停住的原因,是因為在 BCB 的開發環境裡面,預
設會攔截所有的 Exception,所以,你應該在 BCB 以外的環境執行 (從檔案
總管執行你的 *.exe),就不會有這個問題了
(6)另外,如果你不想讓自己的 BCB 預設會攔截所有的 Exception 的話,可以
參考以下這篇文章的做法
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=55034
(7)如果你想關掉 BCB 開發環境中會攔截的特定的 Exception 的話,可以參考
以下這篇文章的做法
http://delphi.ktop.com.tw/topic.php?topic_id=46985
(8)請再依照自己的需求,自行修改
>> < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=10003806&CC=223734"> -- Enjoy Researching & Developing -- 發表人 - RaynorPao 於 2004/09/06 17:17:29
------ -- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
|
ajuang
一般會員
![](./myimg/board/mystar_empty.gif)
![](images/icon_photo_none.gif) 發表:7 回覆:11 積分:3 註冊:2004-08-30
發送簡訊給我
|
RaynorPao,
1. 請問你使用Indy 8 or Indy 9?
2. 我使用Indy 8. 並修改程式如下. Compile沒問題,執行後程式在
IdHTTP1->Post這一行停止.並出現系統錯誤訊息"405 Method not allowed".
是不是程式哪裡有問題?
|
taishyang
站務副站長
![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif) ![](./myimg/board/mystar.gif)
![](http://delphi.ktop.com.tw/download.php?download=upload/462c1ab02cd1c_Pic.jpg) 發表:377 回覆:5490 積分:4563 註冊:2002-10-08
發送簡訊給我
|
ajuang您好:
您一定沒有看過RaynorPao大哥的精采文章,多看看RaynorPao大哥的文章
包准功力和經驗大增 ![]() href="http://delphi.ktop.com.tw/topic.php?TOPIC_ID=44173">http://delphi.ktop.com.tw/topic.php?TOPIC_ID=44173 順心
|
ajuang
一般會員
![](./myimg/board/mystar_empty.gif)
![](images/icon_photo_none.gif) 發表:7 回覆:11 積分:3 註冊:2004-08-30
發送簡訊給我
|
請問版主RaynorPao,
當該網站不支援POST命令,是否會出現如下的訊息
"HTTP/1.1 405 Method Not Allowed"
當該網站支援POST命令,程式所post的值ID=1,PWD=1會出現在欄位上嗎? p.s.:這一兩天出差到外地,未能及時回覆,望多包涵. 並謝謝版主RaynorPao,及taishyang熱心的回覆.
|