Browsed by
Month: November 2015

Sprawdzanie aktualności rekordu

Sprawdzanie aktualności rekordu

Gdy klient posiada dany zasób w cache’u, a następnie wykonuje zapytanie o ten sam zasób, konieczne jest sprawdzenie jego aktualności. Jest to wykonywane za pomocą zapytań warunkowych. Polegają one na wysłaniu pytania o zasób, jednak zasób ten zostanie przesłany z powrotem tylko w przypadku spełnienia określonych warunków. W przypadku sprawdzania aktualności rekordu stosuje się dwa podejścia: Sprawdzenie po dacie ważności zasobu Sprawdzenie po „sumie kontrolnej” zasobu Oba sposoby zostaną później szerzej omówione. Serwer może odpowiedzieć na takie warunkowe zapytanie na następujące…

Read More Read More

Angular – KendoUI Grid – How to integrate it properly

Angular – KendoUI Grid – How to integrate it properly

If you want to use both Angular and Kendo UI components sooner or later you will need to integrate this two libraries. The majority of this task is quite easy and well documented (http://demos.telerik.com/kendo-ui/grid/angular), but the tricky part is in integration with Angular $http service (or in Angular factories in general). You can use standard Kendo Grid functionality like: As you can see, you should add some data to each request and also there is custom behaviour when this request…

Read More Read More

Aktualność obiektu w cache

Aktualność obiektu w cache

Obiekt w cache możemy nazwać aktualnym, jeżeli nie minął jeszcze jego termin ważności. Czas ten jest liczony od momentu pobrania zasobu do momentu określonego przez nagłówki takie jak Expires lub Cache-Control. Jeżeli serwer chce spowodować unieważnienie zachowanego obiektu, powinien on wysłać datę ważności z przeszłości. Dzięki temu podczas najbliższego sprawdzania poprawności lub pobierania zawartości zasobu zostanie on bezwzględnie odświeżony (pobrany ponownie z serwera). Do momentu aż minie czas ważności danego obiektu wszelkie żądania jego pobrania spowodują skorzystanie z zapamiętanej w cache wartości….

Read More Read More

Expression> vs FUNC

Expression> vs FUNC

Both types of types: Expression<Func<T>> and Func<T> are very similar and could be used for the same type of tasks. I will try to dispel any doubts, when to use expressions or when just functions. Let’s begin with Func<TResult> type. There is simple shortage encapsulation for delegate type taking no argument and returns value of type TResult. You can define this delegate explicitly: There are also types like Func<T, TResult>, Func<T1, T2, TResult>, … which differ only with number of input…

Read More Read More

Sposób działania cache

Sposób działania cache

Nagłówek Vary Nagłówek Vary umożliwia określenie, które elementy wiadomości (poza standardowymi: metodą, adresem i hostem) jednoznacznie identyfikują dany zasób. Jest to szczególnie przydatne podczas korzystania z mechanizmu Content negotiation. Dla przykładu odpowiedź zawierająca Vary: accept-language informuje, że nagłówek accept-language powinien być uwzględniony w kluczu obiektów cache. Może to wynikać z faktu, że nagłówek ten pozwala ustalić z klientem język wyniku zapytania, a więc dla każdego języka odpowiedź może się znacząco różnić. Nagłówek Vary może przyjmować wartości: * – oznacza, że…

Read More Read More

Cache HTTP

Cache HTTP

Główną metodą pracy z użyciem HTTP jest pobieranie oraz zapisywanie zasobów z serwera. Najczęściej odczytujemy informacje, jednak z tym może wiązać się pewien problem. Pobieranie treści z serwera zawsze trwa pewien czas, w szczególności, jeżeli potrzebne jest przesłanie dużej ilości informacji. Może to powodować problemy z wydajnością zarówno ze strony klienta jak i serwera. Klient musi pobierać wiele różnych informacji, aby je wykorzystać (np. zaprezentować). Z kolei serwer w przypadku podłączenia się do niego wielu klientów, może mieć problem z…

Read More Read More

Visual Studio – TypeScript version problem

Visual Studio – TypeScript version problem

TypeScript project with Angular in Visual Studio – beginner problem When you start writing your first project in TypeScript in Visual Studio you can notice some annoying behaviour. At first, you probably have installed TypeScript and configured project. Then you have started reading some tutorials. In my case, I started with tutorial: http://chsakell.com/2015/09/19/typescript-angularjs-gulp-and-bower-in-visual-studio-2015/ When I have started following this lessons, I noticed that hundreds of errors appears. Surprisingly, they were not in my code, but in Angular TypeScript definition file – angular.d.ts. I saw that…

Read More Read More