Есть ли способ сделать метод веб-API внутренним? - PullRequest
1 голос
/ 24 апреля 2020

В документе, который я получил, упомянутый Validate Security Token является внутренней функцией. Также сказал, что это не подвергается внешнему потреблению пользователей веб-службы. Не могли бы вы дать мне представление об этом требовании и о том, как реализовать веб-метод?

Ответы [ 2 ]

1 голос
/ 24 апреля 2020

internal - это модификатор доступа в c#, вы можете написать метод, используя internal. Таким образом, он не будет отображаться снаружи,

internal bool ValidateToken()
{
   //Your business logic
}

Из MSDN:

внутренний: к типу или элементу можно получить доступ любым кодом в той же сборки, но не из другой сборки.

0 голосов
/ 28 апреля 2020

Используйте атрибут CORS, чтобы уточнить метод c, который вы хотите использовать для данного домена. Настройте этот домен в качестве политики в ваших настройках приложения.

[EnableCors("restricted-domain-policy")]
public Task<IActionResult> PostUserReport()
{
     // your internal/domain specific
}

Существует и обратный путь, например, использование

[DisableCors("external-domain-policy")]

, которое можно настроить в файле startup.cs как два различных параметра политики.

services.AddCors(feature => {
            feature.AddPolicy(
                "restricted-domain-policy",
                builder => builder
                                .SetIsOriginAllowed((host) => true)
                                .AllowAnyHeader()
                                .AllowAnyMethod()
                                .AllowAnyOrigin()
                                .AllowCredentials()
                            );
        });

services.AddCors(feature => {
                feature.AddPolicy(
                    "external-domain-policy",
                    builder => builder
                                    .SetIsOriginAllowed((host) => true)
                                    .WithHeaders()
                                    .WithMethods(<your method array>)
                                );
            });

Вы можете исследовать WithHeaders (), WithOrigin () et c в любой из политик для соответствующей настройки.

...