Martin Lantzsch
Software Entwickler
29. August 2013

ExtJS Store AJAX Proxy HTTP Basic Authorization

29. August 2013 - Geschrieben von Martin - Keine Kommentare

Um Daten von einem Webservice abzurufen, der mittels HTTP Basic Authorization gesichert ist muss dem AJAX Proxy ein Header mitgegeben werden, der die Base64 encodeten Zugangsdaten enthält. Dies habe ich bei meinem Store direkt in den Konstruktor geschrieben:

constructor: function(config) {
    this.proxy.headers = {
        'Authorization': 'Basic ' + window.btoa(config.username + ':' + config.password)
    };
    this.callParent(config);
}

im Gesamten dann etwa so:

Ext.define('Resi.stores.Mails', {
    proxy: {
        type: 'ajax',
        url: 'api/mails'
    },
    constructor: function(config) {
        this.proxy.headers = {
            'Authorization': 'Basic ' + window.btoa(config.username + ':' + config.password)
        };
        this.callParent(config);
    }
});

Die verwendete window.btoa ist leider nur in neuen Browsern verfügbar, sollten auch ältere Browser später diese Anwendung nutzen sollen, muss hier eine Base64 Bibliothek eingebunden werden.

var Mails = Ext.create('Resi.stores.Mails', { 
    username: 'Resi',
    password: 'Mein sicheres Passwort'
});

7. Dezember 2011

NodeJS auf Windows installieren und nutzen

7. Dezember 2011 - Geschrieben von Martin - 4 Kommentare

Was unter Linux so leicht ist, ist unter Windows auch nicht viel schwerer, wenn man weiß wo man anpacken muss. Da NodeJS seit Version 0.6 einen Windows Build hat, muss man sich gar nicht mit kompilieren herumschlagen sondern kann es direkt per Setup installieren.
Den Download gibt es hier: NodeJS Windows installer
Das Setup verläuft wie jedes andere ganz unspektakulär. Das war es auch schon.

Die node.exe, also das Herzstück von NodeJS findet sich unter

C:\Program Files\nodejs\node.exe

Um effektiv mit NodeJS arbeiten zu können öffnen wir cmd und wechseln in dieses Verzeichnis. Für die Noobs ;-)

cmd.exe
cd C:\Program Files\nodejs\

Hier können wir nun mittels

node.exe

den Server starten. Es begrüßt uns ein Kommando Promt, in dem wir Befehle eingeben können. Wie zum Beispiel Console.Log()

console.Log('Hallo Welt');

Nun wird uns „Hallo Welt“ ausgegeben. Schön, nicht?

Aber jetzt ran an den Speck, wir legen uns nun irgendwo ein NodeJS Arbeitsverzeichnis an, in dem wir unsere JavaScript Dateien ablegen. Ich habe zum Beispiel unter „C:\Users\Martin\Documents\NodeJS\“ ein solches Verzeichnis. Darin erstellen wir uns eine Datei namens „helloWorld.js“

var http = require('http');
var server = http.createServer(function(req, res) {
	res.writeHead(200);
	res.end('Hallo Welt');
}).listen(8080);

Dieses Script lauscht auf den Port 8080 und gibt „Hallo Welt“ aus wenn eine Anfrage per HTTP kommt.
Um nun den Server mit diesem Script zu starten wechseln wir wieder zur Konsole und starten die node.exe folgendermaßen

node.exe C:\Users\Martin\Documents\NodeJS\helloWorld.js

Nun den Browser der Wahl öffnen und „localhost:8080“ in die Adresszeile eingeben und vòila

Hallo Welt

2. Oktober 2011

API Bashing vom Feinsten

2. Oktober 2011 - Geschrieben von Martin - Keine Kommentare

Bei „Vier Fäuste für ein Halleluja“ ziehen Felix von Leitner und Erdgeist im Rahmen des CCC Kongresses 2009 (26C3) schön über vermurkste APIs wie HTTP, X11, smb und natürlich über Sockets her.

Nehmt euch die Stunde zeit und hört es euch an. Den Programmierern unter euch wird es sicher das ein oder andere Auge öffnen. Und natürlich ist es super lustig. Wie die beiden über die APIs herziehen ist echt vom Feinsten. Es wird kein Blatt vor den Mund genommen.

Da hab ich gesaugt: [mp3] [ogg] [mp4]
Und hier gibt es eine FTP Liste: http://events.ccc.de/congress/2009/wiki/Ftp

Das Video ist meiner Meinung nach nicht unbedingt von Nöten, auf den Folien sind nur der Vollständigkeit halber „kurze“ Code Ausschnitte und Schlagworte zu dem was gesagt wird.