Jak umożliwić wykonanie kodu (dll) przed zalogowaniem użytkownika?

W Comarch B2B domyślnie wszystkie metody wymagają, aby użytkownik był zalogowany. Istnieje jednak możliwość uruchomienia napisanej własnej metody przed zalogowaniem.

Kroki do wykonania

1. Należy explicite pozwolić na uruchomienie metody przed zalogowaniem dodając nad metodą nagłówek [AllowAnonymous].

 

2. W nowo powstałym projekcie zanim zostanie stworzony kontroler, należy zainstalować Attribute Routing:

  • W menu w zakładce Tools należy wskazać: NuGet Package Manager\ Package Manager Console.
  • W linii komend należy wpisać: Install-Package Microsoft.AspNet.WebApi.WebHost i nacisnąć klawisz Enter.

Dzięki temu wersja jest kompatybilna z Web API 2.0.

3. Teraz należy kliknąć prawym przyciskiem myszy na katalog Controller i stworzyć nowy plik o dowolnej nazwie lub zmodyfikować istniejący ValuesController.cs.

 

4. W utworzonym pliku należy zmodyfikować namespace na CustomerPanel.Controllers oraz nad klasą dodać [RoutePrefix(“api/Extension”)]. 

5. Wewnątrz klasy należy zdefiniować metodę wyciągającą dane z bazy MyExtension\Controllers\ExtensionApiController.cs.

6. Kod kontrolera możemy weryfikować (debuggowanie).
W tym celu najlepiej ustawić kursor myszki wewnątrz ciała metody i nacisnąć F9. Następnie uruchomić projekt w trybie debugowania. Jeśli proces dalej nie działa należy sprawdzić czy w pliku web.config mamy ustawioną wartość jak niżej:

Kod
<compilation debug="true" targetFramework="4.5"/>

7. Następnie kompilujemy aplikacje i dodajemy nowo powstałą bibliotekę MyExtension\Bin\MyExtension.dll do katalogu Bin naszej aplikacji.

8. Po zalogowaniu należy wprowadzić w okno adresu url przykładowe wywołanie serwisu: localhost/dorobki/api/Extension/1

Wskazówka
Prawidłowe wprowadzenie wartości skutkuje wyświetleniem danych towaru zapisanych
w jsonie.

Czy ten artykuł był pomocny?