CORS en lokaal gebruik (CORS request not HTTP)

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Vraag / rant.
Is er een manier om CORS te omzeilen zodat ik lokaal HTML/JS files kan bekijken zonder een webserver te installeren en zonder CORS helemaal uit te schakelen in Firefox?

Ik probeer wat HTML/Javascript* lokaal te bekijken zonder webserver en dat lijkt vrijwel onmogelijk te zijn geworden door CORS. Specifiek heb ik het dan over https://developer.mozilla...Errors/CORSRequestNotHttp . Het komt er op neer dat moderne browsers weigeren om file:/// te gebruiken voor bepaalde resources.

Het gaat er om dat moderne webbrowsers eisen dat je CORS doet en daarvoor heb je een webserver nodig. Daarbij moet het ook nog een webserver zijn met een geldig certificaat. De officiele CA's geven je uiteraard geen certificaat voor 'localhost', dus moet je in de weer met self-signed certificaten waar niemand vrolijk van wordt.

Heeft iemand hier een oplossing voor zodat ik mijn USB-stick met HTML/javascript kan blijven gebruiken zonder eerst een webserver te gaan installeren?


* achtergrond: ik heb wat presentaties die in HTML zijn gemaakt zodat ze overal gebruikt kunnen worden zonder software te installeren en zonder internetverbinding. Die kan ik nu wel weggooien, ik kan er niet mee aankomen dat er eerst een webserver met ssl geinstalleerd moet worden voor ik mijn presentatie kan geven.

PS. Ik kan CORS helemaal uitschakelen in mijn browser maar dat is ook geen fijne oplossing.

This post is warranted for the full amount you paid me for it.

Alle reacties


Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 13:01:
[...]

PS. Ik kan CORS helemaal uitschakelen in mijn browser maar dat is ook geen fijne oplossing.
Waarom maak je dan niet gewoon een los browserprofiel voor het testen met CORS disabled?

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Ik wil geen lokale aanpassingen doen aan de computer, daar heb ik vaak geen controle over. Ik kom ergens en moet het doen met de spullen die er zijn. Ik wil het podium op lopen, m'n USB-stick in de laptop steken, twee keer klikken en m'n pagina's moeten op het scherm staan. Als ik eerst de browser ga herconfigureren (als ik daar al de rechten voor heb) dan wordt ik door security van het podium gehaald. Daarna wil ik mijn USB-stick cadeau kunnen doen aan de organisatie zodat ze het nog eens rustig na kunnen lezen. Bij andere gelegenheden wordt ik geacht om mijn presentatie van te voren aan te leveren zodat de organisatie deze voor mij klaar kan zetten.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
Begrijpelijk. En een portable Firefox misschien?

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • +1 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Kun je niet niet omzeilen door de javascript code gewoon in de HTML pagina te embedden, in plaats van er naar te verwijzen?

Acties:
  • 0 Henk 'm!

  • henk1994
  • Registratie: November 2013
  • Laatst online: 02-10 13:27
Je kan ook gebruik maken van iets als Electron waar je de bestanden in verpakt, of een andere wrapper.

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
ThomasG schreef op dinsdag 21 januari 2020 @ 13:28:
Kun je niet niet omzeilen door de javascript code gewoon in de HTML pagina te embedden, in plaats van er naar te verwijzen?
Embedden is wel een goed idee. Ik zie er een beetje tegenop omdat het om meerdere files gaan waarvan ik een deel kant en klaar download, maar wellicht valt dat te automatiseren met een tool zoals het Electron dat @henk1994 suggereert.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Kun je niet gewoon een simpele lichtgewicht portable webserver gebruiken.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • Montaner
  • Registratie: Januari 2005
  • Laatst online: 01-09 08:19
Zoveel meer vragen dan specifiek een antwoord op je oplossing;
- Is het altijd dezelfde organisatie?
- Zo niet; niet iedereen zal Firefox gebruiken
- Hoe interactief moet je presentatie zijn zodat het niet in PowerPoint kan? En is het dan nog wel echt een presentatie of meer een demo?
- Waarom op iemand anders zijn laptop een demo geven? Vragen om problemen
- Een executable opstarten van bv. de Elektron wrapper zal veelal geblokkeerd op een corporate laptop mag ik hopen

Al om al; neem je eigen laptop en een 4G dongel mee.

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Woy schreef op dinsdag 21 januari 2020 @ 13:45:
Kun je niet gewoon een simpele lichtgewicht portable webserver gebruiken.
Voor mezelf kan dat wel maar het wordt dan afhankelijk van mijn eigen systeem.

Het gaat om presentaties die ik geef en daarbij maak ik vaak gebruik van hardware van anderen.
Het is niet altijd mogelijk om lokaal software te draaien, als ik van te voren al weet op welk OS het moet draaien.
Tenslotte moet je ook nog een geldig SSL-certificaat hebben en ik weet van te voren niet welke naam de computer heeft waarop ik moet presenteren.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Montaner schreef op dinsdag 21 januari 2020 @ 13:51:
Zoveel meer vragen dan specifiek een antwoord op je oplossing;
- Is het altijd dezelfde organisatie?
- Zo niet; niet iedereen zal Firefox gebruiken
- Hoe interactief moet je presentatie zijn zodat het niet in PowerPoint kan? En is het dan nog wel echt een presentatie of meer een demo?
- Waarom op iemand anders zijn laptop een demo geven? Vragen om problemen
- Een executable opstarten van bv. de Elektron wrapper zal veelal geblokkeerd op een corporate laptop mag ik hopen

Al om al; neem je eigen laptop en een 4G dongel mee.
- Nee, dat kan overal en nergens zijn.
- Ik gebruik HTML omdat het platform onafhankelijk is, ik wil zo min mogelijk afhankelijk zijn van een browser, OS of wat dan ook.
- Ik hou niet van Powerpoint. Ik schrijf mij presentaties in Markdown tekst en gebruik javascript om dat on-the-fly om te zetten in HTML.
- Ik heb niet altijd de keuze.
- Klopt, het moet geen executable worden. Ik kijk nu naar HTML compilers/compressors die niks anders doen dan alles platslaan en in grote HTML file stoppen.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • kaesve
  • Registratie: Maart 2009
  • Laatst online: 16-05 03:04
Voor embedden kan je beter kijken naar een tool als webpack. Die kan ook plaatjes en allerlei andere resources embedden.

Verder zou ik zelf toch ook kijken naar een simpele webserver. Devd is bijvoorbeeld beschikbaar als een losse executable voor zowel linux, windows als osx (https://github.com/cortesi/devd/releases). Je kan dus gewoon een usb met je presentaties + 3x devd meenemen, en min of meer op elk platform je slides tonen.

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09:12

Janoz

Moderator Devschuur®

!litemod

CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 13:01:
Is er een manier om CORS te omzeilen zodat ik lokaal HTML/JS files kan bekijken zonder een webserver te installeren en zonder CORS helemaal uit te schakelen in Firefox?
OM eigenlijk je originele vraag te beantwoorden: Nee

Als deze er wel is, dan is dat een bug die mogelijk misbruikt kan worden waardoor de CORS implementatie dus compromised is.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 13:54:
[...]
Het gaat om presentaties die ik geef en daarbij maak ik vaak gebruik van hardware van anderen.
Het is niet altijd mogelijk om lokaal software te draaien, als ik van te voren al weet op welk OS het moet draaien.
Ja je bent natuurlijk sowieso al afhankelijk van de hardware van anderen, alleen een browser is meestal redelijk standaard. Maar als jij presentaties moet geven dan is het IMHO niet heel gek om daar ook enige eisen aan te stellen. Het draaien van een portable webserver is niet zo heel gek, zeker niet als je die niet op de default port draait. Als je dan een Webserver zoekt die werkt op Linux/Windows/Mac dan moet je toch een heel eind komen.
Tenslotte moet je ook nog een geldig SSL-certificaat hebben en ik weet van te voren niet welke naam de computer heeft waarop ik moet presenteren.
Waarom zou je perse een geldig SSL certificaat moeten hebben? Als je het via een file doet is het toch ook niet via SSL, dus gewoon plain HTTP voor local is natuurlijk ook mogelijk.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Woy schreef op dinsdag 21 januari 2020 @ 14:23:
Maar als jij presentaties moet geven dan is het IMHO niet heel gek om daar ook enige eisen aan te stellen.
Tja, het is voor iedereen handiger als het niet nodig is.
Waarom zou je perse een geldig SSL certificaat moeten hebben? Als je het via een file doet is het toch ook niet via SSL, dus gewoon plain HTTP voor local is natuurlijk ook mogelijk.
Dat is niet mijn wens, maar een eis van CORS (volgens mij).'


update: de eerste tests met alles embedden in 1 file zijn succesvol en minder werk dan ik aanvankelijk dacht.

[ Voor 10% gewijzigd door CAPSLOCK2000 op 21-01-2020 14:41 ]

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Ramon
  • Registratie: Juli 2000
  • Nu online
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 14:39:
[...]

Tja, het is voor iedereen handiger als het niet nodig is.


[...]

Dat is niet mijn wens, maar een eis van CORS (volgens mij).'


update: de eerste tests met alles embedden in 1 file zijn succesvol en minder werk dan ik aanvankelijk dacht.
Domme vraag misschien naar waarom host je je presentatie niet gewoon ergens? Github pages ofzo? Hoef je zelfs geen USB stick meer mee te nemen...

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Acties:
  • 0 Henk 'm!

  • Montaner
  • Registratie: Januari 2005
  • Laatst online: 01-09 08:19
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 13:58:
[...]


- Nee, dat kan overal en nergens zijn.
- Ik gebruik HTML omdat het platform onafhankelijk is, ik wil zo min mogelijk afhankelijk zijn van een browser, OS of wat dan ook.
- Ik hou niet van Powerpoint. Ik schrijf mij presentaties in Markdown tekst en gebruik javascript om dat on-the-fly om te zetten in HTML.
- Ik heb niet altijd de keuze.
- Klopt, het moet geen executable worden. Ik kijk nu naar HTML compilers/compressors die niks anders doen dan alles platslaan en in grote HTML file stoppen.
Je hebt karma badges in Security, Datalek, Certificaat en nog een heel stel... maar je vragen vind ik best bijzonder, vooral over deze assen.

- USB sticks bij overal en nergens inpluggen en achterlaten
- HTML en Javascript uitvoeren op niet-eigen hardware
- Sowieso geen eigen hardware gebruiken om te presenteren

Met een beetje fantasie kan je netwerken infecteren, data stelen, zelf een geïnfecteerde USB stick mee terug nemen, noem maar op. Tenzij je enkel bij de eenmanszaken/kleinbedrijf komt (en dan nog..) zou ik me toch echt gaan afvragen of dit wel de manier is.

Enfin.. goed dat je een oplossing voor je gestelde probleem hebt gevonden ;)

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Montaner schreef op dinsdag 21 januari 2020 @ 15:42:
Je hebt karma badges in Security, Datalek, Certificaat en nog een heel stel... maar je vragen vind ik best bijzonder, vooral over deze assen.

- USB sticks bij overal en nergens inpluggen en achterlaten
- HTML en Javascript uitvoeren op niet-eigen hardware
- Sowieso geen eigen hardware gebruiken om te presenteren
Je hebt helemaal gelijk, steker nog, meestal sta ik een verhaal over security te vertellen. O-)

Als kan doe ik alles op mijn manier, maar ik probeer ook met zo veel mogelijk omstandigheden rekening te houden. Als het kan gebruik ik mijn eigen hardware. Als het kan gebruik ik geen USB-stokken. Als het moet dan krijgen ze de stok cadeau (hun keuze, niet de mijne). HTML en Javascript vertrouw ik meer dan Powerpoint en PDF.

Naast security is er ook nog mijn gemak. Ik wil Markdown, HTML, CSS, etc gebruiken, dat vind ik makkelijk. Ik wil dat het overal direct werkt zonder dat ik dingen moet voorbereiden of configureren. Dusver had ik een oplossing die voor mij prima werkt. Nu kan ik mijn oude bestanden niet meer openen en dat is lastig.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 14:39:
[...]
Dat is niet mijn wens, maar een eis van CORS (volgens mij).'
CORS werkt ook prima over http. Over https heb je natuurlijk wel een geaccepteerd certificaat nodig, maar zelf signed kun je ook gewoon accepteren. Geeft natuurlijk wel een warning in de browser.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • WernerL
  • Registratie: December 2006
  • Nu online
Google Chrome heeft in ieder geval een allow-insecure-localhost flag zodat je lokaal een 'geldig' ssl-certificaat hebt. Maar dan heb je nog steeds een webserver nodig. Maar die zou je eventueel ook op je USBstick kunnen installeren: https://www.usbwebserver.net/webserver/

Voila, probleem opgelost :D

Roses are red, violets are blue, unexpected '{' on line 32.


Acties:
  • +1 Henk 'm!

  • Ramon
  • Registratie: Juli 2000
  • Nu online
CAPSLOCK2000 schreef op dinsdag 21 januari 2020 @ 16:03:
[...]


Je hebt helemaal gelijk, steker nog, meestal sta ik een verhaal over security te vertellen. O-)

Als kan doe ik alles op mijn manier, maar ik probeer ook met zo veel mogelijk omstandigheden rekening te houden. Als het kan gebruik ik mijn eigen hardware. Als het kan gebruik ik geen USB-stokken. Als het moet dan krijgen ze de stok cadeau (hun keuze, niet de mijne). HTML en Javascript vertrouw ik meer dan Powerpoint en PDF.

Naast security is er ook nog mijn gemak. Ik wil Markdown, HTML, CSS, etc gebruiken, dat vind ik makkelijk. Ik wil dat het overal direct werkt zonder dat ik dingen moet voorbereiden of configureren. Dusver had ik een oplossing die voor mij prima werkt. Nu kan ik mijn oude bestanden niet meer openen en dat is lastig.
Nogmaals, gewoon ergens op het internet hosten. Dan is je hele probleem toch opgelost?

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Acties:
  • 0 Henk 'm!

  • GrooV
  • Registratie: September 2004
  • Laatst online: 04-10 15:27
Waarom gebruik je geen markdown naar html generator en embed je JS/CSS/IMGs?

[ Voor 3% gewijzigd door GrooV op 21-01-2020 20:20 ]


Acties:
  • 0 Henk 'm!

  • Hendrik55
  • Registratie: Juli 2003
  • Laatst online: 03-10 18:02
Misschien is Server2GO wat voor je...
Ik heb daar heel vroeger wel eens wat mee gedaan, en dat zojuist onder W10 opgestart en dat bleek nog te werken. Misschien kun je dat ook wel combineren met een portable browser b.v. Firefox.
Nu werd bij mij de standaard browser gestart, maar volgens mij kun je dat ook instellen in een ini file

https://server2go-web.de/

Succes!

Acties:
  • 0 Henk 'm!

  • NotAFarmer
  • Registratie: April 2018
  • Laatst online: 12-09 16:13
Is github pages niet iets voor jou?
https://pages.github.com/ gratis, simpel in gebruik en platform onafhankelijk.

Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Als je gewoon in plaats van dat de javascript bijvoorbeeld JSON probeert te downloaden deze JSON in een JS bestand zet en deze via een script-tag inlaadt dan ben je al klaar. Het probleem is vooral dat je vanuit een javascript page die je van disk laadt (dus file://) een HTTP request probeert te doen, en dat is vrijwel altijd een no-no. En volkomen terecht.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Topicstarter
Ramon schreef op dinsdag 21 januari 2020 @ 20:11:
[...]
Nogmaals, gewoon ergens op het internet hosten. Dan is je hele probleem toch opgelost?
Ik wil niet afhankelijk zijn van een werkende internetverbinding maar alles lokaal hebben. Zodat ik er overal aan kan werken en overal kan presenteren.
GrooV schreef op dinsdag 21 januari 2020 @ 20:19:
Waarom gebruik je geen markdown naar html generator en embed je JS/CSS/IMGs?
Dat is precies wat ik doe, maar die generator is in javascript geschreven en wordt uit externe files gehaald. Ik heb nu een klein scriptje dat verwijzingen naar andere files vervangt door de hele file te embedden. Dat werkt.


PS. Voor iedereen die zich afvraagt waarom ik zo moeilijk doe, ik vind mijn werkwijze zelf erg handig.
90% van mijn slides zijn simpele markdown die ik met iedere teksteditor kan aanpassen. In die slides kan ik echter ook rauw HTML/javascript/... opnemen en het zo gek maken als ik wil. Vervolgens wordt al het render werk door de lokale browser gedaan, zonder dat er eerst een compile stap en zonder upload/download stap.
Een browser-plugin refresht de pagina zodra ik een edit doe. Zo heb ik een render-as-you-type omgeving die helemaal lokaal draait en overal aangepast en gepresenteerd kan worden zonder extra software.
Er zijn vast andere manieren om dit te doen, maar dit is de mijne.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • GrooV
  • Registratie: September 2004
  • Laatst online: 04-10 15:27
CAPSLOCK2000 schreef op woensdag 22 januari 2020 @ 13:14:
[...]

Ik wil niet afhankelijk zijn van een werkende internetverbinding maar alles lokaal hebben. Zodat ik er overal aan kan werken en overal kan presenteren.


[...]


Dat is precies wat ik doe, maar die generator is in javascript geschreven en wordt uit externe files gehaald. Ik heb nu een klein scriptje dat verwijzingen naar andere files vervangt door de hele file te embedden. Dat werkt.


PS. Voor iedereen die zich afvraagt waarom ik zo moeilijk doe, ik vind mijn werkwijze zelf erg handig.
90% van mijn slides zijn simpele markdown die ik met iedere teksteditor kan aanpassen. In die slides kan ik echter ook rauw HTML/javascript/... opnemen en het zo gek maken als ik wil. Vervolgens wordt al het render werk door de lokale browser gedaan, zonder dat er eerst een compile stap en zonder upload/download stap.
Een browser-plugin refresht de pagina zodra ik een edit doe. Zo heb ik een render-as-you-type omgeving die helemaal lokaal draait en overal aangepast en gepresenteerd kan worden zonder extra software.
Er zijn vast andere manieren om dit te doen, maar dit is de mijne.
Nu genereer je toch on the fly de HTML? Ik bedoel dat je losse HTML bestanden genereerd met alles er in, dan heb je geen last van CORS
Pagina: 1