ab56a9bcf7
SVN-Revision: r240
146 lines
5.7 KiB
C#
146 lines
5.7 KiB
C#
/******************************
|
|
* 说明:Post帮助类
|
|
* 创建人:龚宇超
|
|
* 创建日期:2019-07-30
|
|
* 修改人:
|
|
* 修改日期:
|
|
* 修改备注:
|
|
* 版本:1.0.0.0
|
|
******************************/
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Text;
|
|
using System.Web;
|
|
using System.Web.Script.Serialization;
|
|
|
|
namespace PostToWX
|
|
{
|
|
/// <summary>
|
|
/// Post帮助类
|
|
/// </summary>
|
|
public static class PostUtil
|
|
{
|
|
/// <summary>
|
|
/// <para>说明:获取Post结果</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T"></typeparam>
|
|
/// <param name="returnText">The return text.</param>
|
|
/// <returns>T.</returns>
|
|
public static T GetResult<T>(string returnText)
|
|
{
|
|
JavaScriptSerializer js = new JavaScriptSerializer();
|
|
T result = js.Deserialize<T>(returnText);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:发起Post请求</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T">返回数据类型(Json对应的实体)</typeparam>
|
|
/// <param name="url">请求Url</param>
|
|
/// <param name="content">The content.</param>
|
|
/// <returns>T.</returns>
|
|
public static T PostUrl<T>(string url, string content)
|
|
{
|
|
string returnText = RequestUtil.HttpPost(url, content);
|
|
var result = GetResult<T>(returnText);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:发起Post请求</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T"></typeparam>
|
|
/// <param name="url">The URL.</param>
|
|
/// <param name="content">The content.</param>
|
|
/// <param name="header">The header.</param>
|
|
/// <returns>T.</returns>
|
|
public static T PostUrl<T>(string url, string content, WebHeaderCollection header)
|
|
{
|
|
string returnText = RequestUtil.HttpPost(url, content, header);
|
|
var result = GetResult<T>(returnText);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:发起Post请求</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T"></typeparam>
|
|
/// <param name="url">The URL.</param>
|
|
/// <param name="content">The content.</param>
|
|
/// <param name="header">The header.</param>
|
|
/// <param name="method">The method.</param>
|
|
/// <returns>T.</returns>
|
|
public static T PostUrl<T>(string url, string content, WebHeaderCollection header, MethodEnum method)
|
|
{
|
|
string returnText = RequestUtil.HttpPost(url, content, header, method);
|
|
var result = GetResult<T>(returnText);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:发起Post请求</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T">返回数据类型(Json对应的实体)</typeparam>
|
|
/// <param name="url">请求Url</param>
|
|
/// <param name="cookieContainer">CookieContainer,如果不需要则设为null</param>
|
|
/// <param name="fileName">要发送的文件名,如果不需要上传则设为null</param>
|
|
/// <returns>T.</returns>
|
|
public static T PostGetJson<T>(string url, CookieContainer cookieContainer, string fileName)
|
|
{
|
|
string returnText = RequestUtil.HttpPost(url, cookieContainer, fileName);
|
|
var result = GetResult<T>(returnText);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:发起Post请求</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-07-30 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <typeparam name="T">返回数据类型(Json对应的实体)</typeparam>
|
|
/// <param name="url">请求Url</param>
|
|
/// <param name="cookieContainer">CookieContainer,如果不需要则设为null</param>
|
|
/// <param name="fileStream">文件流</param>
|
|
/// <returns>T.</returns>
|
|
public static T PostGetJson<T>(string url, CookieContainer cookieContainer, Stream fileStream)
|
|
{
|
|
string returnText = RequestUtil.HttpPost(url, cookieContainer, fileStream);
|
|
var result = GetResult<T>(returnText);
|
|
return result;
|
|
}
|
|
}
|
|
}
|