我可以用NMhttp向我的网站POST数据,然后网站根据POST数据,我的客户端如何接收返回的一些字符信息。(100分)

  • 主题发起人 主题发起人 zlj555
  • 开始时间 开始时间
Z

zlj555

Unregistered / Unconfirmed
GUEST, unregistred user!
我需要返回的不是网页而是数据,如何怎???
 
在设计网页的时候设置返回的东西就是啦!!!
 
人家是在问:我的客户端如何接收返回的一些字符信息。
 
返回的是什麼咚咚要依賴 Server 端而定。

就像是 Qicq 一樣,由於是傳輸特定格式的資訊,所以C/S兩端都要能解譯此格式,
否則的話,就只能依賴 HTML 網頁型態,並從中解析出想要的資料啦。

例如 Server 回傳以下資料
<html>
<body>
<author><p>作者</p></author>
<content><p>文章</p></content>
</body>
</html>

經由解析可得到
  作者 -> 被<author></author>包含
  文章 -> 被<content></content>包含

如果是變成像下面一樣最基礎的格式,就比較傷腦筋了,
因為,Server 網頁一修改,Client 也要跟著變。
<html>
<body>
<p>作者</p>
<p>文章</p>
</body>
</html>
 
to jiichen :你说的应该用XML去实现,但在Delphi中如何用我这种模式做呢(即回传XML);
我的服务器用的不是IIS而是用 杜长胜的方法用ServerSocket自己写的服务.
 
那些也是字呀,你的服務器應該可以傳文字吧,那就行啦。

就在你要的資料前後加上 <名稱>資料</名稱> 這樣子,即使要顯示在 IE 或 Opera
也沒有問題,因為解析不出來的都不會顯示出來。

然後 Client 端再依照不同的名稱,對應至你想要抓的資料,應該可以解決你的問題吧。
 
我以前的做法是:
NMHTTP1.Post(Edit2.Text, Edit3.Text);
Memo3.Text := NMHTTP1.Header;
Memo4.Text := NMHTTP1.Body;
先POST,然后对取得的数据取行分析,判断取得的数据,
这样做不好的地方,就是服务端一变化,客户端程序
也要做相应的调整,没有想出更好的办法,现在跟大家
一起学习,盼望大侠能提供一套完整的解决方案!
 
我认为用IdHTTP组件,服务端应该做CGI、ASP、PHP之类程序,
然后用
IdHTTP的Post或Get取信息

procedure TForm1.Button1Click(Sender: TObject);
var
idHTTP1:TIdHTTP;
begin
idHTTP1.Create(self);
try
Memo1.Lines.Text:=idHTTP1.Get('http://www.ddddaaa.com/mydate.php?id=100');
except
ShowMessage('取数据失败!');
idHTTP1.Free;
exit;
end;
idHTTP1.Free;
ShowMessage('取数据成功!');
end;

服务器上的mydate.php就跟据id值来取数据返回给idHTTP1
 
http://www.ddddaaa.com/mydate.php的mydate.php内容为
------------------------------------------
<?
print("这就是id=".$id."的数据/r/n");
print("哈哈哈.....你要什么字符串就给你什么串/r/n");
print("再给一句废话你,呵呵^o^/r/n");
?>
---------------------------------------------

返回的字符串:
-------------------------------------------
这就是id=100的数据
哈哈哈.....你要什么字符串就给你什么串
再给一句废话你,呵呵^o^
-----------------------------------------
 
返回的字符串:
-------------------------------------------
这就是id=100的数据
哈哈哈.....你要什么字符串就给你什么串
再给一句废话你,呵呵^o^
-----------------------------------------
 
谢谢
但我不会页编程呀,能不能给个双方的例子呢???
 
My Mail : zljzyj@sina.com
 
多人接受答案了。
 
后退
顶部