VS_Publish
Programmer's notes

OWIN WebApi na hostingu Webio

0 150

W ramach projektu “Smart Lodówka” nadchodzi czas, aby podłączyć do Raspberry Pi czujnik otwarcia drzwi lodówki. Dzięki niemu będzie możliwe monitorowanie czy lodówka jest w danym momencie otwarta. Wygenerowany ciąg zdarzeń (otwarcie, zamknięcie lodówki) zostanie wysłany na serwer do WebApi, które następnie zapisze go w bazie danych.

Ten post jest właśnie o początkach pracy nad stroną serwerową. Jest to moja pierwsza publikacja aplikacji na hostingu Webio, na którym mam swoje strony. Sam blog uruchomiony jest na WordPressie, który jednak został automatycznie zainstalowany z “Galerii aplikacji Microsoft Web App” (efekt wow). Napomnę tylko, że wszystko przebiegło bez najmniejszego problemu. Ale po kolei.

1. Nowa solucja w Visual Studio

Stworzyłem pustą solucję o nazwie “SmartLodowka” i dodałem pusty webowy projekt “SmartLodowkaAPI”. Tutaj Visual Studio dodał też referencje do kompilatorów i Application Insight. Na razie usunąłem je z projektu. Na szczęście były to pakiety nugetowe, więc tylko trochę w nich posprzątałem :) Obecnie plik “packages.config” wygląda tak:

Jako, że chciałem aby WebApi było oparte na OWINie dodałem też odpowiednie pakiety, klasę startową Startup.cs i konfigurację Routingu. Celem tego ćwiczenia ma być sprawdzenie i skonfigurowanie publikowania aplikacji, więc sam kontroler posiada tylko dwie metody, które zwracają zahardkodowane obiekty.

 2. Nowa poddomena w Webio

Kolejnym krokiem było utworzenie nowej poddomeny w panelu administracyjnym Webio. W tym celu przeszedłem na “Domeny” > “Dodaj domenę” > “Poddomena”. Nadałem jej nazwę “smartlodowka.creyn.pl” i zostawiłem domyślnie zaznaczone opcje. Potem przeszedłem do konfiguracji: “Witryny” > “smartlodowka.creyn.pl”. Aby utworzyć interesujący mnie profil przeszedłem na “Publikowanie”, gdzie wpisałem swoje hasło i dostałem opcję pobrania profilu. Kliknąłem na “Download Publishing Profile for this web site” i zapisałem plik na dysku.

Webio_profile

3. Publikowanie

Na koniec w Visual Studio kliknąłem prawym przyciskiem myszy na nazwę projektu i wybrałem “Publish”:

VS_Publish

Z dostępnych opcji wybrałem “Import” i wskazałem pobrany plik profilu. Po jego zaimportowaniu pojawił się automatycznie uzupełniony formularz. Po kliknięciu w “Validate Connection” okazało się, że wszystko działa. Następnie przeszedłem do konfiguracji mojej publikacji i do ostatniego okna podglądu zmian, jakie zostaną wykonane na serwerze. Potem już tylko “Publish” i aplikacja znalazła się na hostingu Webio.

Webio_deploy

Jak możecie się sami przekonać po wpisaniu w przeglądarkę adresu “http://smartlodowka.creyn.pl/api/events” dostajemy listę naszych eventów.

Events

Teraz pozostaje tylko dodać obsługę zapisywania zdarzeń do bazy danych i zacząć konkretną pracę z lodówką :)

C.

Leave a Reply

DEV

Around Dev

My way of seeing

%d bloggers like this: