mirror of
https://github.com/vknet/vk.git
synced 2026-07-10 00:18:28 +00:00
49 lines
No EOL
1.8 KiB
C#
49 lines
No EOL
1.8 KiB
C#
using System;
|
||
using System.Runtime.Serialization;
|
||
using JetBrains.Annotations;
|
||
using VkNet.Model;
|
||
using VkNet.Utils;
|
||
|
||
namespace VkNet.Exception;
|
||
|
||
/// <summary>
|
||
/// Исключение, которое выбрасывается в случаях,
|
||
/// когда требуется дополнительная проверка пользователя,
|
||
/// например при авторизации из подозрительного места
|
||
/// В этом случае необходимо открыть браузер со страницей, указанной в поле
|
||
/// redirect_uri и ждать,
|
||
/// пока пользователь будет направлен на страницу blank.html с параметром success=1
|
||
/// в случае успеха и fail=1
|
||
/// в случае, если пользователь отменил проверку своего аккаунта.
|
||
/// Для тестового вызова проверки добавьте параметр test_redirect_uri=1.
|
||
/// Код ошибки - 17
|
||
/// </summary>
|
||
[Serializable]
|
||
[VkError(VkErrorCode.NeedValidationOfUser)]
|
||
public sealed class NeedValidationException : VkApiMethodInvokeException
|
||
{
|
||
/// <inheritdoc />
|
||
public NeedValidationException(VkError response) : base(response)
|
||
{
|
||
if (response is null)
|
||
{
|
||
return;
|
||
}
|
||
|
||
RedirectUri = response.RedirectUri;
|
||
}
|
||
|
||
/// <inheritdoc />
|
||
private NeedValidationException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(new())
|
||
{
|
||
}
|
||
|
||
/// <inheritdoc />
|
||
[UsedImplicitly]
|
||
public override void GetObjectData(SerializationInfo info, StreamingContext context) => base.GetObjectData(info, context);
|
||
|
||
/// <summary>
|
||
/// Адрес который необходимо открыть в браузере.
|
||
/// </summary>
|
||
public Uri RedirectUri { get; }
|
||
} |