Pastebin-Änderung ab 1. März 2018 + Lösung

  • Hallo zusammen,


    dieser Beitrag ist primär an diejenigen Spieler gerichtet, die - wie meine Wenigkeit - viel mit ComputerCraft
    arbeiten.


    Viele von Euch werden höchstwahrscheinlich das im OS integrierte "pastebin"-Programm verwenden. Dies hat
    gute Gründe: Zum einen ist das "edit"-Programm absolut teuflisch und wenig produktiv; das Arbeiten mit
    externen Quelltext-Editoren ist wesentlich angenehmer. Zum anderen kann man so immer eine Backup-Kopie
    der Programme auf seinem eigenen Computer haben, falls man ausversehen den Computer-Block abbaut oder
    gewisse Server-Backups nicht mehr zugreifbar sind ;)


    Leider wird diese Erleichterung ab dem 1. März 2018 nicht mehr funktionieren, denn die Pastebin-API,
    auf welche das "pastebin"-Programm intern zugreift, wird ab diesem Datum nur noch auf HTTPS-Requests
    antworten. (Siehe Angang oder https://pastebin.com/api). In der CC Version 1.4 sind die internen Methoden
    "http.post()" und "http.get()" jedoch noch nicht in der Lage HTTPS zu verwenden. Das Programm wird also
    in der jetzigen Form nicht mehr korrekt arbeiten.


    Wie der Titel jedoch verspricht habe ich eine Lösung gefunden, die ich Euch nun präsentieren möchte. Die
    "http.request()"-Methode kann nämlich sehr wohl HTTPS verwenden, das "pastebin"-Programm ist also
    anpassbar. Wäre die Lösung so einfach dass man nur die Methodennamen ersetzen müsste hätte ich diesen
    Beitrag nicht verfasst; es steckt noch ein wenig mehr dahinter als es scheint.


    Meine Lösung ist ein "Fixer"-Programm, welches das im OS versteckte "pastebin"-Programm ausliest, dessen
    Code abändert, und als eigenes "pastebin"-Programm abspeichert, sodass die Variante aus dem OS
    überschrieben wird. Der Code ist hier zu finden:



    "Ja super. Soll ich den Code jetzt jedes mal abschreiben wenn ich mit Pastebin interagieren will?"


    Natürlich nicht. Deswegen habe ich diesen Beitrag mit genügend Spielraum verfasst damit ihr euch im
    Voraus gelabelte Computer/Disketten/o.ä. anlegen könnt. Alternativ habe ich noch eine "min"-Version im
    Angebot, damit man so wenige wie möglich Zeichen setzen muss. Dieser Code sorgt für das identische
    Ergebnis, ist aber nur 286 Zeichen lang:



    Ich hoffe ich konnte Euch auf das Problem aufmerksam machen und eine zufriedenstellende Lösung präsentieren,
    Fragen & Anmerkungen können hierunter gerne formuliert werden.


    MFG Qivex


    PS: Ich weiß nicht inwiefern man das Problem auch lösen kann, indem serverseitig das OS verändert wird.
    Nur als Vorschlag ;)


    PPS: Wenn ihr diesen Beitrag als sinnvoll erachtet dürft ihr ihn auch in den Thread "Tutorials" verschieben 8)

  • Ich kann auch die mod aufm server anpassen und so das pastebin programm umschreiben es bleibt quasi alles beim alten und man kann weiter wie gewohnt mit pastebin arbeiten


    brauche dann halt nur das dementsprechende programm

  • Original:


    Gefixtes Programm (nicht 1:1 das was nach der Ausführung meines Fixers vorliegt, meine Version sollte kurz sein):