Skip to content

Commit e85b22c

Browse files
committed
Head alias method for HttpRequest
1 parent 98e8660 commit e85b22c

File tree

1 file changed

+59
-3
lines changed

1 file changed

+59
-3
lines changed

Leaf.xNet/~Http/HttpRequest.cs

Lines changed: 59 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -852,6 +852,58 @@ public HttpResponse Get(Uri address, RequestParams urlParams = null)
852852

853853
#endregion
854854

855+
856+
#region Head
857+
858+
/// <summary>
859+
/// Отправляет HEAD-запрос HTTP-серверу.
860+
/// </summary>
861+
/// <param name="address">Адрес интернет-ресурса.</param>
862+
/// <param name="urlParams">Параметры URL-адреса, или значение <see langword="null"/>.</param>
863+
/// <returns>Объект, предназначенный для загрузки ответа от HTTP-сервера.</returns>
864+
/// <exception cref="System.ArgumentNullException">Значение параметра <paramref name="address"/> равно <see langword="null"/>.</exception>
865+
/// <exception cref="System.ArgumentException">Значение параметра <paramref name="address"/> является пустой строкой.</exception>
866+
/// <exception cref="Leaf.xNet.HttpException">Ошибка при работе с HTTP-протоколом.</exception>
867+
public HttpResponse Head(string address, RequestParams urlParams = null)
868+
{
869+
// ReSharper disable once InvertIf
870+
if (urlParams != null)
871+
{
872+
var uriBuilder = new UriBuilder(address) {
873+
Query = urlParams.Query
874+
};
875+
address = uriBuilder.Uri.AbsoluteUri;
876+
}
877+
878+
return Raw(HttpMethod.HEAD, address);
879+
}
880+
881+
/// <summary>
882+
/// Отправляет HEAD-запрос HTTP-серверу.
883+
/// </summary>
884+
/// <param name="address">Адрес интернет-ресурса.</param>
885+
/// <param name="urlParams">Параметры URL-адреса, или значение <see langword="null"/>.</param>
886+
/// <returns>Объект, предназначенный для загрузки ответа от HTTP-сервера.</returns>
887+
/// <exception cref="System.ArgumentNullException">Значение параметра <paramref name="address"/> равно <see langword="null"/>.</exception>
888+
/// <exception cref="Leaf.xNet.HttpException">Ошибка при работе с HTTP-протоколом.</exception>
889+
// ReSharper disable once UnusedMember.Global
890+
public HttpResponse Head(Uri address, RequestParams urlParams = null)
891+
{
892+
// ReSharper disable once InvertIf
893+
if (urlParams != null)
894+
{
895+
var uriBuilder = new UriBuilder(address) {
896+
Query = urlParams.Query
897+
};
898+
address = uriBuilder.Uri;
899+
}
900+
901+
return Raw(HttpMethod.HEAD, address);
902+
}
903+
904+
#endregion
905+
906+
855907
#region Options
856908

857909
/// <summary>
@@ -901,7 +953,8 @@ public HttpResponse Options(Uri address, RequestParams urlParams = null)
901953
}
902954

903955
#endregion
904-
956+
957+
905958
#region Post
906959

907960
/// <summary>
@@ -1591,6 +1644,7 @@ public Dictionary<string, string>.Enumerator EnumerateHeaders()
15911644

15921645
#endregion
15931646

1647+
15941648
#region Patch
15951649

15961650
/// <summary>
@@ -2046,6 +2100,7 @@ public HttpResponse Patch(Uri address, HttpContent content)
20462100

20472101
#endregion
20482102

2103+
20492104
#region Put
20502105

20512106
/// <summary>
@@ -2499,7 +2554,8 @@ public HttpResponse Put(Uri address, HttpContent content)
24992554
#endregion
25002555

25012556
#endregion
2502-
2557+
2558+
25032559
#region Delete
25042560

25052561
/// <summary>
@@ -2953,7 +3009,7 @@ public HttpResponse Delete(Uri address, HttpContent content)
29533009
#endregion
29543010

29553011
#endregion
2956-
3012+
29573013
#endregion
29583014

29593015
#region Методы (защищённые)

0 commit comments

Comments
 (0)