Die Instanz von ExternalServerAccess erhält man über die KnuddelsServer.getExternalServerAccess(). Damit der Zugriff auf einen externen Server funktioniert, muss auf dem Server eine Datei knuddelsAccess.txt abgelegt werden, die die FTP-User-ID des Entwicklers enthält.

Methoden

callURL

(
  • urlString
  • [parameters]
)

Macht einen Request auf die übergebene URL.

Parameter:

  • urlString String
  • [parameters] Object optional
    • [onSuccess] Function optional
    • [onFailure] Function optional
    • [method] String optional

      'GET' oder 'POST'

    • [data] Object optional

      Daten zum Übertragen, falls Methode 'POST' ist

Beispiel:

externalServerAccess.callURL('https://www.knuddels.de', {
    method: 'GET',
    onSuccess: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Alles klar: ' + externalServerResponse);
    },
    onFailure: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Oh oh: ' + externalServerResponse);
    }
});

canAccessURL

(
  • urlString
)
Boolean

Prüft den Zugriff auf eine bestimmte URL. Wird je Kombination von "Protokoll + Host + Port" geprüft.
Beispiel: http://www.example.de:8080

Parameter:

Rückgabewert:

Beispiel:

        var canAccessURL = externalServerAccess.canAccessURL('http://www.google.de'); // i.e.: false

getAllAccessibleDomains

() Domain[]

Liefert eine Liste aller zugreifbaren Domains

Rückgabewert:

Beispiel:

        var allAccessibleDomains = externalServerAccess.getAllAccessibleDomains(); // i.e.: []

getURL

(
  • urlString
  • [parameters]
)

Macht einen GET-Request auf die übergebene URL und liefert den Inhalt zurück. Diese Methode ist eine Convenience-Methode für externalServerAccess.callURL().

Parameter:

Beispiel:

externalServerAccess.getURL('https://www.knuddels.de', {
    onSuccess: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Alles klar: ' + externalServerResponse);
    },
    onFailure: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Oh oh: ' + externalServerResponse);
    }
});

postURL

(
  • urlString
  • [parameters]
)

Macht einen POST-Request auf die übergebene URL und liefert den Inhalt zurück. Diese Methode ist eine Convenience-Methode für externalServerAccess.callURL().

Parameter:

Beispiel:

externalServerAccess.postURL('https://www.knuddels.de', {
    data: {
        nick: 'someAwesomeNick',
        status: '3'
    },
    onSuccess: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Alles klar: ' + externalServerResponse);
    },
    onFailure: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Oh oh: ' + externalServerResponse);
    }
});

touchURL

(
  • urlString
  • [parameters]
)

Macht einen GET-Request auf die übergebene URL. Im Gegensatz zum GET-Request wird der Inhalt der Webseite wird nicht ausgelesen. Aus diesem Grund ist diese Methode schneller. Diese Methode ist eine Convenience-Methode für externalServerAccess.callURL().

Parameter:

Beispiel:

externalServerAccess.touchURL('https://www.knuddels.de', {
    onSuccess: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Alles klar: ' + externalServerResponse);
    },
    onFailure: function(responseData, externalServerResponse)
    {
        var bot = KnuddelsServer.getDefaultBotUser();
        bot.sendPublicMessage('Oh oh: ' + externalServerResponse);
    }
});