由于项目需要,现在要用C#以HTTP方式请求Java Jersey发布的 Restful资源。自己写了一个工具类,开源一下。
高手请飘过。请不要做非人类的事情,转载请留名!
using System;
using System.IO;
using System.Net;
using System.Net.Security;
using System.Net.Sockets;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Configuration;
namespace EriloanUtilLibrary.Http
{
/// <summary>
/// HTTP工具类
/// </summary>
public class HttpTools
{
/// <summary>
/// 证书路径
/// </summary>
public String certFilePath { get; set; }
/// <summary>
/// 证书口令
/// </summary>
public String certFilePwd { get; set; }
/// <summary>
/// API地址
/// </summary>
public String apiUrl { get; set; }
/// <summary>
/// API密钥
/// </summary>
public String apiKey { get; set; }
/// <summary>
/// Socket服务器地址
/// </summary>
public String socketServerIP { get; set; }
/// <summary>
/// Socket服务器端口
/// </summary>
public Int32 socketServerPort { get; set; }
/// <summary>
/// 默认的构造函数
/// </summary>
public HttpTools()
{
this.certFilePath = ConfigurationManager.AppSettings["certFilePath"];
this.certFilePwd = ConfigurationManager.AppSettings["certFilePwd"];
this.apiUrl = ConfigurationManager.AppSettings["apiUrl"];
this.apiKey = ConfigurationManager.AppSettings["apiKey"];
this.socketServerIP = ConfigurationManager.AppSettings["socketServerIP"];
this.socketServerPort = Int32.Parse(ConfigurationManager.AppSettings["socketServerPort"]);
}
/// <summary>
/// 带参数据的构造函数
/// </summary>
/// <param name="certFilePath"></param>
/// <param name="certFilePwd"></param>
/// <param name="apiUrl"></param>
/// <param name="apiKey"></param>
/// <param name="socketServerIP"></param>
/// <param name="socketServerPort"></pa