Paket Angular Masalah CORS simple-pdf-viewer 'Access-Control-Allow-Origin' Saat Menggunakan Laravel Sebagai Backend

Saya sedang mengembangkan aplikasi sudut yang perlu menampilkan PDF di halaman web. Untuk mencapai ini saya menggunakan paket simple-pdf-viewer.
Paket ini berfungsi dengan baik ketika saya memberikan jalur lokal saya File PDF seperti local-path ,Tetapi ketika saya memberikan jalur server langsung saya seperti live-path maka itu memberi saya kesalahan

localhost/:1 Gagal memuat https://booksapi.alphawods.com/storage/app/pdf-test.pdf: Tidak ada header 'Access-Control-Allow-Origin' pada sumber daya yang diminta. Oleh karena itu, asal 'http://localhost:4200' tidak diizinkan untuk diakses.

Saya menggunakan Laravel sebagai back-end dan Angular sebagai front-end. Biasanya ini adalah masalah umum CORS pada Laravel yang telah saya konfigurasikan dan semua permintaan saya ke server berfungsi dengan baik.

Ini adalah tangkapan layar file CORS yang berfungsi yang digunakan di server saya. cor

Berikut adalah kode simple-pdf-viewer yang memanggil sumber daya pdf

public openUrl(url: string, startAt: SimplePDFBookmark = SimplePDFBookmark.EMPTY_BOOKMARK) {debugger
  this.http.get(url, { responseType: 'arraybuffer',withCredentials: false })
  .subscribe((file: ArrayBuffer) => {
    this.openDocument(new Uint8Array(file), startAt);
  }, error => {
    this.onError.emit(error);
    this.loaded = false;
  });}

Saya sudah membaca masalah terkait ini di GitHub, tetapi tidak dapat menemukan solusinya. Berikut ini tautan masalah tersebut masalah terkait


person waqar18    schedule 11.07.2018    source sumber


Jawaban (1)


Hal lain yang perlu Anda konfigurasi adalah server web Anda (nginx/apache) untuk mengizinkan CORS. Menambahkan konfigurasi CORS pada Laravel middleware hanya akan berfungsi jika permintaan masuk ke aplikasi Laravel Anda. Karena Anda mengakses file secara langsung, header tambahan tidak akan pernah ditambahkan karena tidak mencapai rute Laravel apa pun, bukan? Jadi permintaan tersebut hanya akan ditangani oleh server web.

Saya harap ini memberi Anda beberapa petunjuk.

person Dharma Saputra    schedule 11.07.2018