当前位置: 移动技术网 > IT编程>开发语言>.net > Asp.net XMLHTTP封装类(GET,Post发送和接收数据)

Asp.net XMLHTTP封装类(GET,Post发送和接收数据)

2018年04月20日  | 移动技术网IT编程  | 我要评论

飘柔洗发水真假,股票交易费用计算器,阿里妈妈广告联盟

复制代码 代码如下:

/****************************************************************
* 函数名称:sendcommand(sendmethod method, st_param p)
* 功能说明:向远程发送url和参数,接受返回信息(无乱码);
* 参 数:method:xml发送方法,post/get 两种
p:参数结构体
public string url; //远程url
public string parameters; //参数
public string uid; //帐号
public string pwd; //号令
* 调用示列:
* using ebcnc; //引用空间名
* xmlhttp x = new xmlhttp(); //创建设xmlhttp对像
* xmlhttp.st_param st = new xmlhttp.st_param(); //创建参数数组
* st.parameters = ""; //url详细参数
* st.url = "http://www.baidu.com/"; //url
* st.uid = "" ; //帐号
* st.pwd = ""; //口令
* string rn=””; //返回字符串
* rn=x.sendcommand(xmlhttp.sendmethod.post, st); //获取返回信息
* x.dispose();

***********************************************************************/
using system;
using msxml2;
namespace ebcnc
{
/// <summary>
/// xmlhttp基类
/// </summary>
public class xmlhttp : idisposable
{
#region 变量及参数
private xmlhttpclass xml;
private bool _alreadydispose = false;

public st_param parameters;

public enum sendmethod : int
{
post, get
}
#endregion

#region 参数结构体
public struct st_param
{
public string url;
public string parameters;
public string uid;
public string pwd;
}
#endregion

#region 发送数据
/// <summary>
/// 发送数据
/// </summary>
/// <param name="method">发送方式</param>
/// <param name="p">数据</param>
/// <returns>string</returns>
public virtual string sendcommand(sendmethod method, st_param p)
{
if (p.url == null || p.url == "") return null;
if (method == sendmethod.post)
{
try
{
xml.open("post", p.url, false, p.uid, p.pwd);
xml.setrequestheader("content-type", "application/x-www-form-urlencoded");
xml.send(commonfunction.urlencoding(p.parameters));
if (xml.status == 200)
{
return system.text.encoding.default.getstring((byte[])xml.responsebody);
}
else
{
return xml.status.tostring();
}
}
catch (exception e)
{
return e.message.tostring();
}
}
else if (method == sendmethod.get)
{
xml.open("get", p.url + "?" + commonfunction.urlencoding(p.parameters), false, p.uid, p.pwd);
xml.send(null);
return system.text.encoding.default.getstring((byte[])xml.responsebody);
}
return null;
}
#endregion

#region 构造与释构
public xmlhttp()
{
xml = new xmlhttpclass();
}
~xmlhttp()
{
dispose();
}
protected virtual void dispose(bool isdisposing)
{
if (_alreadydispose) return;
if (isdisposing)
{
if (xml != null)
{
xml = null;
}
}
_alreadydispose = true;
}
#endregion

#region idisposable 成员

public void dispose()
{
dispose(true);
gc.suppressfinalize(this);
}

#endregion
}
}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网