Come faccio a caricare un webcomponent tra i domini?

0

Domanda

Non si carica componenti web di altri domini?

Sto diventando un cors di errore in firefox/linux.

Ho aggiunto questo per nginx ma ancora non riesco a caricarlo:

  add_header Access-Control-Allow-Origin *;

<html lang="en">
  <head>
      <meta charset="utf-8" />
      <script type="module" src="//briskreader.com/components/feed-list.js"></script>
  </head>
  <body>
    <feed-list topic="bitcoin"></feed-list>
  </body>
</html>

Ecco l'errore:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://briskreader.com/components/feed-list.js. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

Loading module from “http://briskreader.com/components/feed-list.js” was blocked because of a disallowed MIME type (“text/html”).
test.html
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://briskreader.com/components/feed-list.js. (Reason: CORS request did not succeed).

Heres l'intestazione briskreader.com:

$ curl -I 'https://briskreader.com/components/feed-list.js'
HTTP/2 200 
server: nginx/1.18.0 (Ubuntu)
date: Sun, 21 Nov 2021 06:30:51 GMT
content-type: application/javascript
content-length: 2187
expires: Sun, 21 Nov 2021 06:30:50 GMT
cache-control: no-cache
cache-control: no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0
access-control-allow-origin: *
accept-ranges: bytes
firefox nginx web-component
2021-11-20 05:37:14
1

Migliore risposta

0

Web components ha nulla a che fare con CORS. L'attributo type="module" su <script> tag cause del CDR richiesta. A differenza del classico script, modulo di script richiedono l'utilizzo del CDR, il protocollo per il cross-origin recupero.

Accanto a questa linea add_header Access-Control-Allow-Origin *; è inutile sul dominio di origine. È necessario impostare Access-Control-Allow-Origin intestazione briskreader.com dominio. Se non si ha controllo briskreader.com, quindi considerare l'utilizzo di classica script. È comunque possibile utilizzare componenti Web con un classico script.

2021-11-21 06:06:13

Ho impostato su briskrsader e ancora non funziona.
chovy

@chovy si Può condividere l'intestazione di risposta per la richiesta di //briskreader.com/components/feed-list.js?
Harshal Patil

aggiornato domanda, come si può vedere ha access-control-allow-origin: *
chovy

così qui è il problema. stavo usando http-server che utilizza il protocollo http e il mio server reindirizzato http -> https, che non funzionano per il protocollo agnostico, url, credo. Strano.
chovy

Se cambio il src attributo del modulo // per https:// funziona benissimo.
chovy

Idealmente // dovrebbe funzionare. Ma che strano. Contento che ha funzionato per voi.
Harshal Patil

Io con voto positivo (da -1 voto di stato). [nel mio laico parole] // significa: la richiesta con il protocollo richiedente è in esecuzione, in modo che una pagina servito con HTTP invia una richiesta HTTP; quindi il HTTPS server si blocca, dato che è un insicuro richiesta. Fare 2 minuti di ricerca su Google e avrai un sacco di risposte.
Danny '365CSI' Engelman

Ho pensato che briskreader.com serve anche a http e non solo https.
Harshal Patil

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................