问题标签 [asp.net-spa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
607 浏览

asp.net-core - 如何使用 ASP.Net Core 3、SPA 应用程序对无效的 api 请求返回错误

我在 ASP.Net Core 3 中使用 SPA (React) 应用程序。

发生的情况是任何请求都将首先到达后端并允许 .Net 尝试路由它,如果找不到路由,它会返回index.html并假设 SPA 可以处理路由。

大多数时候我对此很满意,但我想知道是否有办法排除任何路由器api/

我发现 index.html 在任何 make-up 上都返回(带有 200)非常烦人api/MadeUp/Request。我不能让它在无效的 api 请求上返回 500,但仍然允许 SPA 管理任何其他请求(即返回 index.html)吗?

0 投票
1 回答
986 浏览

c# - .NET Core WebAPI VueJS 模板发布问题

我正在尝试在这里找到的“带有 Asp.Net Core 3.1 Web API 模板的 VueJS” ,它在开发过程中运行得非常顺利。但是,我想看看它是如何处理发布的,但我无法让它发挥作用。

运行发布到文件夹时,它不会将 clientapp/dist 文件夹移动到输出目录,这没关系,所以我想我会手动执行。因此,我尝试使用以下路径将 dist 文件夹的内容移动到输出目录:

  • “/发布/clientapp/dist”
  • “/发布/分发”
  • “/发布/客户端应用程序”

但以上似乎都不起作用,运行 .dll 文件时出现以下错误:

这是我在 Startup.cs 中的“UseSpa”:

使用上面的代码,我假设我的 dist 文件夹应该位于 /publish/clientapp/dist 中,我已经尝试过,但即便如此,我也会收到上面提到的错误。

我希望有人能指出我正确的方向 - 在此先感谢:)

0 投票
1 回答
536 浏览

c# - .Net Core 3.1 SPA 授权失败

我在从 React SPA 调用授权 api 时遇到问题。如果删除控制器/操作中的 [Authorize] 属性,它就可以工作,但是一旦添加到属性中,响应就会转到 SPA 主页。

项目结构

  • IdentityServer (.net core 3.1 mvc with IdentityServer4 *reference token type)

  • 登录(使用 IdentityServer 进行身份验证和对 Portal 的身份验证回调)

  • Portal(.net core 3.1 react SPA,使用IdentityServer4.AccessTokenValidation进行验证

反应

启动.cs

如果 api 控制器没有“授权”属性,则有效,但一旦添加,则将继续未经授权。

0 投票
0 回答
236 浏览

asp.net - 无法在工作项目目录之外发布 ASP.Net Core SPA 应用程序

我正在使用Angular&构建一个应用程序ASP.Net。我用过ASP.Net Core & Angular web template(包含在 Visual Studio 中)。但是,我的前端源代码没有ClientApp像定义的模板那样放在文件夹中(因为我的项目有要求)

我设置了一个环境变量,即:APPLICATON_FRONT_END_PATH指向我的项目工作目录之外的一个目录。让我们说:

  • 我的项目在:H:\Back-end\asp-net\my-app
  • 我的前端源代码位于:H:\Front-end\angular\my-app
  • 环境(上面提到的)是指向H:\Front-end\angular\my-app

我已将实现更改Startup.cs为:

并将我的更改.csproj为:

我可以顺利运行我的项目,但是,当我发布我的应用程序时,我收到了一个错误:

C:\Program Files\dotnet\sdk\5.0.201\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Publish.targets(197,5): 错误 MSB3541: Files has invalid value "H:\Back- end\asp-net\my-app\obj\Release\net5.0\PubTmp\Out\H:\Front-end\angular\my-app\dist\app-main\0-es2015.aaca7edec797253393da.js”。不支持给定路径的格式。

谁能帮帮我?谢谢

0 投票
0 回答
148 浏览

asp.net - ASP .NET 5.0 React 与 Docker 无法启动“npm”

我有一个 .net 5.0 react 应用程序。我正在尝试添加 docker 支持,但我面临以下异常

这是我的 Dockerfile

我尝试按照Microsoft 的指南进行操作,但它似乎不适用于 5.0。有了它,构建还有另一个例外:

有没有人遇到过类似的问题,如何解决?