CCIE.pl

site 4 CCIE wannabies
It is currently 23 Jun 2017, 03:47

All times are UTC+02:00




Post new topic  Reply to topic  [ 7 posts ] 
Author Message
 Post subject: Cisco REST API Tutorial
Post #1 Posted: 24 Oct 2016, 22:31 
Offline
CCIE / Site Admin
CCIE / Site Admin
User avatar

Joined: 13 Aug 2004, 12:19
Posts: 4755
Location: 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"


Top
   
Post #2 Posted: 31 Oct 2016, 17:17 
Offline
CCIE / Site Admin
CCIE / Site Admin
User avatar

Joined: 13 Aug 2004, 12:19
Posts: 4755
Location: 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"


Top
   
Post #3 Posted: 03 Jan 2017, 13:43 
Offline
CCIE / Site Admin
CCIE / Site Admin
User avatar

Joined: 13 Aug 2004, 12:19
Posts: 4755
Location: 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"


Top
   
Post #4 Posted: 15 Feb 2017, 13:50 
Offline
CCIE / Site Admin
CCIE / Site Admin
User avatar

Joined: 13 Aug 2004, 12:19
Posts: 4755
Location: 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"


Top
   
Post #5 Posted: 17 Feb 2017, 09:02 
Offline
CCIE/CCDE Site Admin
CCIE/CCDE Site Admin

Joined: 15 Jul 2004, 20:35
Posts: 6215
Location: 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


Top
   
Post #6 Posted: 27 Feb 2017, 20:09 
Offline
wannabe
wannabe

Joined: 18 Apr 2016, 21:04
Posts: 52
Location: 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.

Code:
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-promises-for-dummies
A tu nowe promisses dodane do przegldarek fetch() https://developers.google.com/web/updates/2015/03/introduction-to-fetch
ktory skroci twoj kod o 3/4 ;]

Przyklad: wzialem jakies api publiczne i

Code:
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


Top
   
Post #7 Posted: 27 Feb 2017, 22:35 
Offline
CCIE / Site Admin
CCIE / Site Admin
User avatar

Joined: 13 Aug 2004, 12:19
Posts: 4755
Location: 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"


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 7 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
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.



Powered by phpBB® Forum Software © phpBB Limited