在C++Builder中開發CGI的一點點體會_PHP

來源:互聯網
上載者:User
關鍵字 體會 開發 cgi 可以 執行 AnsiString 方法
C和C加加

汗ing。。。這點點體會是面向新手的,高手可以不看。
我對php的瞭解還不夠深入,所以有時碰到用php一時沒法解決的問題就求助於順手的開發工具來做cgi了,而且安全性和穩定性也很容易提高,exe的程式也只是幾十kb而已,速度還是可以的,如果做成dll,那麼速度也是很快的。

一、根據頁面要求方法的不同,擷取傳入資料有兩種方法:
1、如果是POST方法:
例:提交表單中有一個文字框名叫 tName
那麼在C++Builder中就應該如下擷取:
AnsiString s = Request->ContentFields->Values[AnsiString("tName")];
Response->Content = s;
Response->SendResponse();

2、如果是GET方法:
例:URL請求:http://localhost/cgi-bin/xxx.exe/reg?abc=123
那麼在C++Builder中就應該如下擷取:
AnsiString s = Request->QueryFields->Values[AnsiString("abc")];
Response->Content = s;
Response->SendResponse();

二、由於編譯後是可執行代碼,所以副檔名是什麼都無所謂,只要放在可執行檔cgi目錄就可以了,例如我有個cgi檔案是prj.exe,把cgi目錄設定為唯讀、可執行、不能瀏覽等,那麼我把prj.exe檔案改為prj.html或prj.cgi都能正常應用,安全性無形中提高了一些。

三、用c++builder開發的cgi可以響應多個不同的請求,用路徑標識來區分,這些路徑是虛擬,實際上不存在的,只在當前可執行檔中存在,例如這樣:
http://localhost/cgi-bin/prj.exe/photo?id=1
http://localhost/cgi-bin/prj.exe/document?id=2
...
可以利用這一特性,把多個處理工作做在一個cgi中,呵呵,一個小小的exe檔案就基本把所有工作都做完了。
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.