CCIE.pl

site 4 CCIE wannabies
Dzisiaj jest 18 gru 2017, 00:31

Strefa czasowa UTC+01:00




Nowy temat  Odpowiedz w temacie  [ Posty: 7 ] 
Autor Wiadomość
Post #1 : 24 paź 2016, 22:31 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4837
Lokalizacja: Warsaw, PL
Reaktywowałem bloga :) Potrzebowałem miejsca na notatki a przy okazji zbieranie materiałów wartych uwagi przy różnych zabawach z technologiami. Teraz poszło na tapetę REST API w ASA, pojawi się w kilku odsłonach.

Cisco ASA REST API – Part I: Getting started
Cisco ASA REST API – Part II: How it’s really working?
Cisco ASA REST API – Part III: Checking if prefix is directly connected
Cisco ASA REST API – Part IV: Debugging REST API Agent
Cisco ASA REST API – Part V: Node.js, JavaScript and small HTTP server displaying ACL
Cisco ASA REST API – Part VI: Swift on iPhone

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #2 : 31 paź 2016, 17:17 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4837
Lokalizacja: Warsaw, PL
Częśc druga bardziej teoretyczna, ale od następnej lecimy z mięskiem ;)

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #3 : 03 sty 2017, 13:43 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4837
Lokalizacja: Warsaw, PL
Zapraszam do lektury trzeciej części, dyskusji i komentowania. We wpisie prosty skrypt z opisem wykorzystanych metod.

Cisco ASA REST API – Part III: Checking if prefix is directly connected

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #4 : 15 lut 2017, 13:50 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4837
Lokalizacja: Warsaw, PL
Jakoś umknęło mi aktualizowanie spisu a tu 3 nowe odcinki sagi o REST API się pojawiły ;)

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #5 : 17 lut 2017, 09:02 
Offline
CCIE/CCDE Site Admin
CCIE/CCDE Site Admin

Rejestracja: 15 lip 2004, 20:35
Posty: 6259
Lokalizacja: Warsaw, PL
No i cool :)
Popatrzymy w wolnej chwili na temat, ale najpierw PLNOG .

_________________
"Two things are infinite: the universe and human stupidity; and I'm not sure about the universe."
A. Einstein


Na górę
Post #6 : 27 lut 2017, 20:09 
Offline
wannabe
wannabe

Rejestracja: 18 kwie 2016, 21:04
Posty: 72
Lokalizacja: CCIE
Pepper ja bym tak szybko nie skreslal node.js na twoim miejscu ani javascript.

Pamietaj ze asynchronicznosc jest stworzona i idealna do zapytan API. Jaka masz pewnosc ze wysylajac request HTTP Dostaniesz go od razu ? moze bedzie akurat jakis lag, cos co spowolni response, nie chcesz przeciez zeby caly twoj program czekal az wroca dane, w tym czasie mozesz wykonac inne operacje a w ostatecznosci jak przyjdzie response to sie wykona callback ktory go obsluguje

Ponizej jak mozna usprawnic callbacki


Callbacki moga zajechac czlowieka bo powstaje makaron (funkcja za funkcja i mozna sie pogubic)
na szczescie jest cos takiego jak Promisses, gdzie mozna callbacki zamknac w bardziej czytelny dla czlowieka sposob + obsluzyc sobie blad po kazdej funkcji

Cala idea Promiss jest taka ze bierze dwa argumenty resolve/reject(opcjonalny mozna uzyc catch) i wrzuca siebie w pending state, dopoki resolve nie zwroci rzadanej wartosci
albo reject nie wypluje bledu. Ta zwracana wartosc wykorzystujesz w kolejnych funkcjach. Dla przykladu na kolanie napisane Hello World, bo przyklady z sieci
sa malo zrozumiale zeby chwycic ideee imho.
Kod:
var greetings = new Promise(function(resolve) {
  resolve("Hello in");
});

function hello(value){
  let msg = "my world"
  console.log(value+" my world")
  return value+msg;
}

function calculate(value){
  console.log("And length of my message:",value.length)
}

function helloError(err){
  return console.log(err)
}

greetings
.then(hello)
.then(calculate)
.catch(helloError);
Tu fajnie opisane sa promisses https://scotch.io/tutorials/javascript- ... or-dummies
A tu nowe promisses dodane do przegldarek fetch() https://developers.google.com/web/updat ... n-to-fetch
ktory skroci twoj kod o 3/4 ;]

Przyklad: wzialem jakies api publiczne i
Kod:
mkdir moje-api 
cd moje-api
npm init -y
npm install --save node-fetch

touch apitest.js

w pliku
var fetch = require('node-fetch');

var dataRecv = []

 fetch('http://api.giphy.com/v1/gifs/trending?api_key=dc6zaTOxFJmzC')
.then(response => response.json())
.then(responseData=> {
  //console.log(responseData.data)
  Object.assign(dataRecv,responseData.data)
    console.log(dataRecv)})

.catch(error => console.log("Data fetch failed"))
I robisz sobie z tym co chcesz w kolejnych .then albo po za bo dataRecv obiekt jest dostepny po za scope promisses. Nawet python i ruby ze swoimi requestami sie chowa
przy tym ;]

Oprocz fetch masz jeszcze axios, ktory ma middleware mozesz robic z response/request co chcesz zanim dane zostana odebrane lub wyslane

Mam nadzieje ze zachecilem cie do dalszej exploracji javascript


Na górę
Post #7 : 27 lut 2017, 22:35 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4837
Lokalizacja: Warsaw, PL
Hej Horac,

Napisałem na wstępie całego cyklu, że nie jestem programistą ;) node.js wyskoczył jako element dyskusji i został potraktowany na zasadzie "can I do that?". Nie wątpię, że pokazany sposób nie jest optymalny. Zresztą bawiąc się Swiftem szybko polubiłem bibliotekę Alamofire od systemowej.

Rady tu zawarte mam nadzieję potomności się przydadzą :)

Pzdr

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat  Odpowiedz w temacie  [ Posty: 7 ] 

Strefa czasowa UTC+01:00


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
This Website is not sponsored by, endorsed by or affiliated with Cisco Systems, Inc. Cisco, Cisco Systems, CCDA, CCNA, CCDP, CCNP, CCIE, CCSI, CCIP, the Cisco Systems logo and the CCIE logo are trademarks or registered trademarks of Cisco Systems, Inc. in the United States and certain other countries. Używamy informacji zapisanych za pomocą cookies i podobnych technologii m.in. w celach reklamowych i statystycznych oraz w celu dostosowania naszych serwisów do indywidualnych potrzeb użytkowników. Mogą też stosować je współpracujące z nami firmy. W programie służącym do obsługi internetu można zmienić ustawienia dotyczące cookies. Korzystanie z naszych serwisów internetowych bez zmiany ustawień dotyczących cookies oznacza, że będą one zapisane w pamięci urządzenia.



Technologię dostarcza phpBB® Forum Software © phpBB Limited
Polski pakiet językowy dostarcza phpBB.pl