访问本地主机被拒绝您无权查看此页面。 HTTP 错误 403

问题描述 投票:0回答:5

我有一个小的 NodeExpress 服务器,当我尝试向服务器发出请求时,它返回 403 错误 我已经安装了

Cors
并使用它并尝试使用 chrome 浏览器和 Postman 作为 2 个客户端并得到相同的拒绝错误

var express = require('express')
var cors = require('cors')
var app = express()

app.use(cors())

app.get('/', function (req, res, next) {
  res.json({msg: 'This is CORS-enabled for all origins!'})
})

app.listen(80, function () {
  console.log('CORS-enabled web server listening on port 80')
})
node.js express cors httpclient
5个回答
37
投票

我在

firebase serve
 上使用 
MacBook Pro (14-inch, 2021), Apple M1 Pro, macOS Monterey 12.3

遇到了这个问题

更新:

显然原因是

macOS Monterey 引入了在端口 5000 上运行的 AirPlay Receiver。这会阻止您的 Web 服务器在端口 5000 上提供服务。Receiver 已经拥有该端口。

所以 上面引用的答案提出的解决方案是关闭AirPlay Receiver,或者在另一个端口上运行您的应用程序。

如果您使用 firebase serve 运行您的应用程序,您可以按照以下方法更改端口:

来源

firebase.json 文件不适用于 firebase serve 命令。 您必须使用 firebase 模拟器:启动命令。

如果你想继续使用 firebase serve 那么它应该像这样使用 在:

firebase serve --only hosting --port=5002

旧答案:

没有足够的答案,但我可以通过输入

127.0.0.1
而不是
localhost
来绕过这个问题。我不认为这是最好的答案,我也不满意。一旦找到更好的答案,我一定会稍后回来更新答案。


1
投票

只需使用另一个端口,例如5100

"sampleApp": {
  "commandName": "Project",
  "launchBrowser": true,
  "launchUrl": "weatherforecast",
  "applicationUrl": "http://localhost:5100",
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development"
  }
}

0
投票

有时我在 Monterey 上开发 FLASK 应用程序并使用 Chrome 时遇到同样的问题。 重启 Chrome 总能解决问题。我想没有正确停止应用程序是我的根本原因。


0
投票

我刚遇到这个问题。我的堆栈是 Node + Express

有了这个堆栈,上面的解决方案也可以工作。

我所要做的就是更改色情号码:

app.listen(5000);
// 不起作用

app.listen(8000);
//一切都好:)


0
投票

试试这个

chrome://net-internals/#sockets

[嵌入式插座池]

© www.soinside.com 2019 - 2024. All rights reserved.