|
|
|
@ -1,23 +1,18 @@ |
|
|
|
using JetBrains.Annotations; |
|
|
|
using System; |
|
|
|
using JetBrains.Annotations; |
|
|
|
using Microsoft.Net.Http.Headers; |
|
|
|
using Volo.Abp; |
|
|
|
|
|
|
|
namespace Microsoft.AspNetCore.Http |
|
|
|
{ |
|
|
|
public static class AbpHttpRequestExtensions |
|
|
|
{ |
|
|
|
private const string RequestedWithHeader = "X-Requested-With"; |
|
|
|
private const string XmlHttpRequest = "XMLHttpRequest"; |
|
|
|
|
|
|
|
public static bool IsAjax([NotNull]this HttpRequest request) |
|
|
|
{ |
|
|
|
Check.NotNull(request, nameof(request)); |
|
|
|
|
|
|
|
if (request.Headers == null) |
|
|
|
{ |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
return request.Headers[RequestedWithHeader] == XmlHttpRequest; |
|
|
|
return string.Equals(request.Query[HeaderNames.XRequestedWith], "XMLHttpRequest", StringComparison.Ordinal) || |
|
|
|
string.Equals(request.Headers[HeaderNames.XRequestedWith], "XMLHttpRequest", StringComparison.Ordinal); |
|
|
|
} |
|
|
|
|
|
|
|
public static bool CanAccept([NotNull]this HttpRequest request, [NotNull] string contentType) |
|
|
|
@ -25,7 +20,7 @@ namespace Microsoft.AspNetCore.Http |
|
|
|
Check.NotNull(request, nameof(request)); |
|
|
|
Check.NotNull(contentType, nameof(contentType)); |
|
|
|
|
|
|
|
return request.Headers["Accept"].ToString().Contains(contentType); |
|
|
|
return request.Headers[HeaderNames.Accept].ToString().Contains(contentType, StringComparison.OrdinalIgnoreCase); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|