服务器以“text/html”的非 JavaScript MIME 类型响应 - 节点

Posted

技术标签:

【中文标题】服务器以“text/html”的非 JavaScript MIME 类型响应 - 节点【英文标题】:The server responded with a non-JavaScript MIME type of "text/html" - Node 【发布时间】:2021-01-26 03:16:10 【问题描述】:

我在尝试创建/导入 客户端 实例以连接到本地数据库 (PGADMIN) 时遇到此错误。

import Client from '/node_modules/pg/lib/'

Error

My Directory

Last part of my index.html

我尝试了多种类型的网址,但我无法完成。所以我在寻求帮助。

另外,我试过:const Client = require('pg'),但我得到了“Uncaught ReferenceError: require is not defined”

谢谢。

【问题讨论】:

请在问题本身而不是图片中发布错误。 1) Uncaught ReferenceError: require is not defined 2) 加载模块脚本失败:服务器以“text/html”的非 javascript MIME 类型响应。根据 HTML 规范对模块脚本强制执行严格的 MIME 类型检查。 编辑问题以提供澄清,不要在 cmets 中隐藏细节。 【参考方案1】:

这里有两个问题。

    /node_modules/pg/lib/ 将解析为列出该目录中文件的 HTML 文档。只能导入 JS 文件。 任何允许您直接连接到 postgresql 数据库的库都将依赖于 Node.js 提供的 API,这些 API 在浏览器中不可用,因此即使您导入了正确的 URL,它仍然无法工作.

从服务器端代码连接到数据库,并使用它为客户端提供可以通过 Ajax 访问的 Web 服务。


另外,我试过:const Client = require('pg'),但我得到“未捕获的 ReferenceError:未定义要求”

浏览器不支持 CommonJS 模块。

【讨论】:

以上是关于服务器以“text/html”的非 JavaScript MIME 类型响应 - 节点的主要内容,如果未能解决你的问题,请参考以下文章

GCP App Engine / Angular - 无法加载模块脚本:服务器以“text/html”的非 JavaScript MIME 类型响应

Angular - 无法加载模块脚本:

9.27

正则表达式

加载模块脚本失败:服务器以“text/plain”的非 JavaScript MIME 类型响应

以 text/html 内容类型发送登录凭据