我在Visual Studio 2022中使用新模板为带有.NET Core的React应用程序构建的项目中遇到了这个问题。 在我的例子中,我只得到了响应“You need to enable JavaScript to run this app”,并调用了我添加的一个新控制器。调用内置的WeatherForecastController工作得很好。我的新控制器的配置与内置控制器相同,所以我不知道为什么会发生这种情况。这与这个项目模板如何创建React应用程序和后台应用程序有关。setupProxy.js文件定义了应该转发到API的路由,所有其他路由都被重定向到index.html,这实际上就是我的例子,因为我的新控制器没有被添加到setupProxy.js,中间件将请求重定向到index.html,并且因为它来自Postman而不是浏览器,所以会显示有关启用JavaScript的消息。 解决方案是每个控制器必须在setupProxy.js中显式Map,否则将无法正确代理。在进行此更改后,它在Postman中以及从React应用程序获取调用中运行良好。
const context = [
"/weatherforecast", // built-in controller than comes with the project template in VS2022
"/recaptcha" // controller I created (this line must be added)
];
5条答案
按热度按时间lztngnrs1#
我花了一些时间思考这种恐惧...然后突然我意识到发生了什么事...
1.端点不存在,可能是拼写错误
1.不在您预期的同一目录中,请尝试在url开头添加或删除“/”,特别是在您未指定主机名的情况下,即
fetch('getusername')
与fetch('/getusername')
不同。这在开发中是可以接受的,但在已部署时则不可接受,因为它指向不同的路径。1.该端点在开发中可能工作正常,但在生产/登台中的某个地方,它生成了一些异常。
y1aodyip2#
我不认为POSTMAN能够在控制台中执行JavaScript。尝试在Web浏览器中执行相同的操作,它将工作(您不会看到此错误消息)。
8ftvxx2r3#
我更新了 Postman ,现在它工作了。我不知道这是因为更新或重新启动。
yx2lnoni4#
我在Visual Studio 2022中使用新模板为带有.NET Core的React应用程序构建的项目中遇到了这个问题。
在我的例子中,我只得到了响应“You need to enable JavaScript to run this app”,并调用了我添加的一个新控制器。调用内置的WeatherForecastController工作得很好。我的新控制器的配置与内置控制器相同,所以我不知道为什么会发生这种情况。这与这个项目模板如何创建React应用程序和后台应用程序有关。setupProxy.js文件定义了应该转发到API的路由,所有其他路由都被重定向到index.html,这实际上就是我的例子,因为我的新控制器没有被添加到setupProxy.js,中间件将请求重定向到index.html,并且因为它来自Postman而不是浏览器,所以会显示有关启用JavaScript的消息。
解决方案是每个控制器必须在setupProxy.js中显式Map,否则将无法正确代理。在进行此更改后,它在Postman中以及从React应用程序获取调用中运行良好。
snvhrwxg5#
在使用 Postman 调用REST API时,如果您错过了端点,则也会出现此问题,请将端点添加到URL并检查