Rolf B: <script> extern Inhalt anzeigen

Beitrag lesen

Hallo Henry,

so weit ich das weiß, sieht es nicht gut aus für den automatisierten Sourcecode-Klau 😉.

Der Browser bietet Dir im script-Element den Sourcetext im text Attribut an, wenn es ein Inlinescript ist. Andernfalls steht da nur das src Attribut zur Verfügung.

Dessen Inhalt per AJAX zu laden kann dann an CORS scheitern (ein Ajax-Request darf weniger als ein Script-Abruf, weswegen man JSONP erfunden hat). Der Browser in den Entwicklerwerkzeugen fragt da natürlich nicht nach, die kümmern sich nicht um CORS.

Das Script-Element findest Du über document.currentScript (nicht immer), oder bei Modulen über import.meta.url.

Laterale Informationen:

Wenn Du nur das Script-Element finden willst, in dem Du unterwegs bist, gibt es bei externen Scripten auch noch den Trick von require.js. Die laufen über document.scripts und suchen das heraus, wo in src "require.js" angesprochen wird. Und greifen dann die am script-Element gesetzten data-Attribute ab…

Wenn Du Dich in einer benannten Funktion, z.B. function foo, befindest, kannst Du über foo.toString() den Sourcecode der Funktion erhalten.

Rolf

--
sumpsi - posui - obstruxi