【问题标题】:VueJS PDF web viewVueJS PDF 网页视图
【发布时间】:2019-09-02 05:06:15
【问题描述】:

您好,我正在尝试将 pdf 网页视图添加到我的 vue js vuetify 项目中。 我为此选择了 vue-pdf https://github.com/FranckFreiburger/vue-pdf

我的pdf src是直接作为URL来的,代码是这样的。

<template>
  <pdf src="https://lovezwl.vip/pdf.pdf"></pdf>
</template>

<script>
import pdf from 'vue-pdf'

export default {
  components: {
    pdf
  }
}

然后我得到一个错误

从原点获取 'https://lovezwl.vip/pdf.pdf' 的访问权限 'http://localhost:8083' 已被 CORS 策略阻止:否 请求中存在“Access-Control-Allow-Origin”标头 资源。如果不透明的响应满足您的需求,请设置请求的 模式为“no-cors”以获取禁用 CORS 的资源。

据我所知,CORS 是处理服务器而不是前端的东西。但是此刻我在后端什么都做不了,我必须 从前端想办法。有什么办法可以克服这个错误。

或者你们知道其他任何库都可以很好地使用 URLS 作为 pdf 源吗?

【问题讨论】:

标签: vue.js pdf vuejs2


【解决方案1】:

vue-pdf 内部使用 XMLHttpRequest。您需要配置您的 PDF 所在的服务器 (lovezwl.vip) 以发送 CORS 标头以允许您的本地服务器 (localhost) 获取您的文档。至少发送一个像这样的标题:

Access-Control-Allow-Origin: "*"

当然,您可以设置更适合您的情况的更严格的标题。

如果您无法控制服务器并且无法更改配置,则无法使用 vue-pdf 嵌入此 PDF 文件。

【讨论】:

  • OP 说 “这一刻我在后端什么都做不了,我必须从前端想办法”。此外,这可以通过使用链接副本中概述的代理来解决,因此说它无法完成是不正确的
猜你喜欢
  • 2019-11-20
  • 2012-05-22
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多