DLEPHI中WebRequest是什么东西 ( 积分: 100 )

  • 主题发起人 主题发起人 abigfish
  • 开始时间 开始时间
A

abigfish

Unregistered / Unconfirmed
GUEST, unregistred user!
*/
public string Send(MMessage mm)
{
try
{
// 验证参数有效性
WebRequest wReq = WebRequest.Create(sMmscUrl);
HttpWebRequest hReq = (HttpWebRequest)wReq;
wReq.Headers.Clear();
if (sProxyUrl.Length > 0)
wReq.Proxy = new WebProxy(sProxyUrl);

wReq.ContentType = "application/vnd.wap.mms-message";
hReq.Accept = "application/vnd.wap.mms-message,text/plain,*/*";
wReq.Method = "POST";
hReq.KeepAlive = false;
hReq.UserAgent = "Nokia6681/2.0 (4.00.15) SymbianOS/8.0 Series60/2.6 Profile/MIDP-2.0 Configuration/CLDC-1.1";
// Write Post Dat
byte[] byMM = mm.GetContent();
hReq.ContentLength = byMM.Length;
Stream sReq = wReq.GetRequestStream();
sReq.Write(byMM, 0, byMM.Length);
sReq.Close();
// Http Request
WebResponse wRes = wReq.GetResponse();
HttpWebResponse hRes = (HttpWebResponse)wRes;
if (hRes.StatusCode == HttpStatusCode.OK)
{
Stream sRes = wRes.GetResponseStream();
StreamReader sr = new StreamReader(sRes);
string szResult = sr.ReadToEnd(); // 发送结果
// Parse result sring
return szResult;
}
}
catch (Exception e)
{
throw new Exception(e.Message);
}
return string.Empty;
}
}
以上是从CSDN上找到的发彩信的一点代码,可是在DELPHI中,这个要怎么编呢?给点思路就有分了,如果全部改写上面的代码就再给100分了
 
晕,没人回答
 
要送分了,居然没人过来顶,唉
 
唉呀呀,这个好办呀。用Indy的控件就可以做到。
我帮你转一份delphi的代码试试。
 
请转,或发到我邮箱13859908@163.com
 
我用的是Delphi7,Indy的Indy Clients属性页有idhttp组件。

IdHTTP1.Request.CustomHeaders.Clear;
IdHTTP1.Request.ContentType := 'application/vnd.wap.mms-message';
IdHTTP1.Request.Accept := 'application/vnd.wap.mms-message,text/plain,*/*';
IdHTTP1.Request.UserAgent := 'Nokia6681/2.0 (4.00.15) SymbianOS/8.0 Series60/2.6 Profile/MIDP-2.0 Configuration/CLDC-1.1';
IdHTTP1.Response.KeepAlive := False;

TIdHttp 可以通过Get/Post两种方式向服务器提交请求,看那段代码(C#的?)是用了Post的方法。
IdHTTP1.Post(AURL:string;ASource:TStream);

Delphi7自带的Indy版本有一些已知的bug,例如CookieManage的主机地址判断上,会导致cookie丢失,所以我下载了最新的版本在使用。

具体彩信格式的定义和生成,我就不懂了,你给的代码也没有提到。如果有什么资料,希望可以分享。
 
试了我上面的方法了么?
 
接受答案了.
 
后退
顶部