45 lines
1.3 KiB
C#
45 lines
1.3 KiB
C#
namespace LMS.Tools.HttpTool
|
|
{
|
|
/// <summary>
|
|
/// HTTP服务接口
|
|
/// </summary>
|
|
public interface IHttpService
|
|
{
|
|
/// <summary>
|
|
/// 下载文件并返回字节数组
|
|
/// </summary>
|
|
/// <param name="url">文件URL</param>
|
|
/// <param name="maxFileSize">最大文件大小限制(字节)</param>
|
|
/// <returns>文件字节数组</returns>
|
|
Task<byte[]?> DownloadFileAsync(string url, double maxFileSize);
|
|
|
|
/// <summary>
|
|
/// 发送GET请求
|
|
/// </summary>
|
|
/// <param name="url">请求URL</param>
|
|
/// <returns>响应内容</returns>
|
|
Task<string> GetAsync(string url);
|
|
|
|
/// <summary>
|
|
/// 发送POST请求
|
|
/// </summary>
|
|
/// <param name="url">请求URL</param>
|
|
/// <param name="content">请求内容</param>
|
|
/// <returns>响应内容</returns>
|
|
Task<string> PostAsync(string url, string content);
|
|
|
|
/// <summary>
|
|
/// 检查URL是否可访问
|
|
/// </summary>
|
|
/// <param name="url">要检查的URL</param>
|
|
/// <returns>是否可访问</returns>
|
|
Task<bool> IsUrlAccessibleAsync(string url);
|
|
|
|
/// <summary>
|
|
/// 获取URL的Content-Type
|
|
/// </summary>
|
|
/// <param name="url">要检查的URL</param>
|
|
/// <returns>Content-Type</returns>
|
|
Task<string?> GetContentTypeAsync(string url);
|
|
}
|
|
} |