有没有办法让 BaseX 提供 HTML 文档服务?

2024-01-03

有没有办法让 BaseX 的 HTTP 服务器提供 HTML 文档,该文档可以作为原始资源存储在数据库中,也可以存储在文件系统中,具有 text/html 内容类型,以便可以在浏览器中显示?

该文档是一个向 BaseX 发出 XHR 请求的网页。目前,我通过文件协议将其加载到浏览器上。这需要让 Jetty 使用 CORS 标头进行响应,否则同源策略会阻止 XHR 请求。

然而,这是维护负担。 BaseX 的每次更新都需要手动获取添加 CORS 标头的新版本 servlet 过滤器。

我想让 BaseX 本身提供 HTML 文档(并成为源),从而消除跨源请求。

是否可以?


默认web.xml(位于BaseXWeb/WEB-INF)已经包含了从以下位置提供静态文件的配置./static目录下的/static/ URI:

  <!-- Mapping for static resources (may be restricted to a sub path) -->
  <servlet>
    <servlet-name>default</servlet-name>
    <init-param>
      <param-name>useFileMappedBuffer</param-name>
      <param-value>false</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/static/*</url-pattern>
  </servlet-mapping>

您还可以查看数据库管理员 https://github.com/BaseXdb/basex/tree/master/basex-api/src/main/webapp/dba,它也是 BaseX 托管的 Web 应用程序的示例实现,并利用./static一些 JavaScript 文件的文件夹。

当然,你也可以更改默认值web.xml如果您需要从另一个目录托管的文件。另一种选择总是将文档作为 RAW 文件存储在数据库中 http://docs.basex.org/wiki/Databases#Raw_Files,并自行为他们提供足够的内容类型。作为通过托管文件./static文件夹绕过 RestXQ 执行并让 Jetty 直接提供文件,不过,与从 BaseX 数据库读取文件相比,您可能会获得一些性能改进。第三种解决方案可能是在 BaseX 前面托管一个反向代理来提供静态文件(无论如何,这通常是在生产中完成的),但这会增加开发中的一些管理开销。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法让 BaseX 提供 HTML 文档服务? 的相关文章

随机推荐

  • Verilog 最佳实践 - 递增变量

    我绝不是 Verilog 专家 我想知道是否有人知道这些增加值的方法中哪一种更好 抱歉 如果这个问题太简单了 Way A 在组合逻辑块中 可能在状态机中 some condition count next count 1 然后在一个连续块中
  • 禁用 Apache Felix 中的缓存

    我正在尝试按照该线程中的说明进行操作 http osdir com ml dev felix apache 2009 05 msg00051 html http osdir com ml dev felix apache 2009 05 m
  • 在 PhoneGap IOS 上缓存图像的最佳方法

    我正在构建一个 PhoneGap ios 应用程序 用于使用 JSON 从服务器导入数据 该数据包含图像 URL 我已经用于将数据缓存在本地存储中 以便在应用程序没有互联网连接时使用它 但我有一个问题是缓存图像的最佳方式是什么 我正在考虑将
  • 在 RStudio 中安装包时出错:从连接读取时出错

    我最近更新了 R 版本 3 4 1 和 RStudio 版本 1 0 143 现在无法从 Rstudio 安装软件包 如果我直接使用 R 安装包install packages 效果很好 如果我尝试使用以下任一方法在 Rstudio 中安装
  • 构造函数调用自身

    我最近发现无参数构造函数和多参数构造函数不能轮流调用对方 这种限制的根本原因是什么 有人可能会说构造函数是初始化资源的地方 因此不能递归调用它们 我想知道这是否是唯一的原因 函数 方法 过程可以递归调用 为什么不是构造函数 答案在于 对另一
  • 获取焦点(或 Tab)顺序

    我使用 Qt Designer 设计了一个用户界面 并使用 编辑选项卡顺序 模式设置了选项卡顺序 现在我想知道 出于其他原因 不是那么重要 是如何获取 ui 中特定 QWidget 的 Tab 键顺序 我的意思是 如果我有几个小部件 并且说
  • 工作流程语言? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找当前工作流程语言的列表 我知道关于BPEL http en wikipedia org wiki Business Proces
  • 查询特定 Twitter 用户的 tweepy (get_followers) 中的分页

    我对使用游标类的 tweepy 和分页相当陌生 我一直在尝试使用光标类来获取特定 Twitter 用户的所有关注者 但我不断收到错误消息 tweepy error TweepError This method does not perfor
  • Apache Tomcat 9 重写阀不工作

    我一直在尝试设置我的 tomcat 9 重写阀门 在全局级别 但没有成功 遵循我在互联网上找到的每个教程 但无论我如何配置我的 rewirte config 阀门根本无法工作 所以我写了我能想到的最简单的 rewrite config 它只
  • Vue 和 Bootstrap Vue - 动态使用插槽

    我试图在 bootstrap vue 表中创建一个插槽 以使用自定义组件呈现任何布尔值 所以我有一个简单的表
  • 自动部分重新索引何时在 Magento EE 1.13 中实际运行?

    Magento 1 13 为大多数索引添加了部分索引 并能够将索引过程推迟到异步运行的 cron 作业 我的问题是 是否有现有的 cron 作业可以执行此操作 或者这是我必须自己设置的东西 文档对此并不清楚 http www magento
  • 如何在 Android 应用程序中单击按钮时打开网站?

    我正在设计一个应用程序 有几个按钮供用户单击 单击按钮后 用户将被定向到适当的网站 我该如何实现这个目标 如果您正在谈论 RCP 应用程序 那么您需要的是 SWTlink widget Here http dev eclipse org v
  • 在 Google 表格中查找默认填充颜色的颜色代码

    我正在编写一个脚本 使用以下命令为 Google 电子表格中的单元格着色Range setBackground color 方法 我想使用一种预设填充颜色 但我很难找到确切的颜色代码 十六进制 RGB 我只想要一个官方列表 000000 4
  • 如何知道应用程序是否首次在 Mac 上运行

    在Windows上 我们可以将值写入注册表来知道 但我如何知道我的应用程序是否是第一次在 Mac 上运行 我需要执行一些初始化任务 Thanks 您正在寻找班级NSUserDefaults see 苹果文档 http developer a
  • 完整的未来 | thenApplyAsync 与 thenCompose 及其用例[重复]

    这个问题在这里已经有答案了 我试图理解 CompletableFuture 并遇到了两种方法 thenApplyAsync 和 thenCompose 我试图理解这两者之间的区别 CompletableFuture
  • HTML5:通过 JavaScript 绘图后将透明度应用于 Canvas

    我试图将多个对象绘制到画布元素上 然后将它们干净地淡出 然而 当尝试使用 globalAlpha 来实现此目的时 您可以看到通常会被遮挡的对象片段 因为每个对象都变得单独透明 解释 考虑以下代码 context fillStyle yell
  • Moment Js 获取两个日期之间的小时差

    我可以使用 MomentJs 获取两个日期之间的差异 如下所示 moment end diff startTime format m m s s 但是 我还想在适用时显示小时 仅当已过去 gt 60 分钟时 但是 当我尝试使用以下命令检索持
  • 用于分析 OCaml 代码的工具 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 除了在编译时使用 p 选项然后使用 gprof 之外 是否有人知道用于分析 OCaml 代码的程序 我
  • R 数据表 setkey - 错误某些列不在 data.table 中

    我想使用 data tablesetkey具有预定义列表id and categories 但收到错误消息 gt setkey tr id cat dt id categories Error in setkeyv x cols verbo
  • 有没有办法让 BaseX 提供 HTML 文档服务?

    有没有办法让 BaseX 的 HTTP 服务器提供 HTML 文档 该文档可以作为原始资源存储在数据库中 也可以存储在文件系统中 具有 text html 内容类型 以便可以在浏览器中显示 该文档是一个向 BaseX 发出 XHR 请求的网