我正在为Visual Studio 2017寻找一个好的Angular 4模板.或者什么是最好的模板和继续使用的方法?这将是一个Angular 4 SPA网页.
我正在使用.net core 2.0和angular 4的角度Spa模板.
页面刷新后,我的cookie数量为零.事实上,在页面刷新后,我在HttpContext中没有得到任何东西.
如果我使用角度系统菜单,它工作正常.
现在,这是我在后端获取cookie的代码.
private string GetCookie(HttpContext httpContext, string cookieName)
{
var rqstCookie = httpContext.Request.Cookies[cookieName];
return !string.IsNullOrEmpty(rqstCookie) ? rqstCookie : null;
}
Run Code Online (Sandbox Code Playgroud)
一个重要的事情是,当我点击菜单时,它会加载组件和服务文件,然后它向C#controller请求所有标题和选项.但是当我刷新页面时,整个过程都会被跳过,所以我认为这些选项不会传递到后端,这就是为什么我的cookie是空的.
在我的其他应用程序中,我已经使用url重写同样的问题,它在那里工作,但在这里,因为这个应用程序是角度spa模板,url重写不起作用.
我也尝试设置url重写,就像我在旧应用程序中所做的那样,但它给了我错误.这是我遵循的url重写模块的链接. /sf/answers/1830640801/
我已将Cookie更新为Session Cookie,但它也无效.
你能指导我如何获取所有的cookie和其他数据,即使用户刷新页面.谢谢...
single-page-application asp.net-core-2.0 angular spa-template
我用“ dotnet new angular”创建一个项目。如果在Typescript指令上设置了断点,则在运行时它会显示为空心红色圆圈。错误消息是“断点当前不会被命中。断点已设置但尚未绑定。”
从.Net Core SDK 1.x更新到2.x时,开始出现此问题。这是2.x中的错误还是与我的设置有关?使用2.x的人在VS2017中可以使用Typescript断点吗?我将在下面详细介绍我的设置以及失败的地方。
要重现该问题,可以在“ this.currentCount ++;”上设置一个断点。在ClientApp \ src \ app \ counter \ counter.component.ts中,然后在“ Counter”页面上单击“ Increment”。
我目前正在使用最新的官方版本:
Visual Studio Pro 15.7.2
.Net Core SDK 2.1.300 (x64)
.Net Core Runtime 2.1.0 (x64)
Run Code Online (Sandbox Code Playgroud)
我尝试了其他SDK 2.x版本。在v2.1.4和v2.1.300中失败。但是断点在v2.0.0、2.1.200和2.1.201中成功。
不同之处在于,当成功完成后,每个SDK都会在“ dotnet新角度”期间在项目的根目录中生成文件“ webpack.config.js”和“ webpack.config.vendor.js”。最新的2.x版本不会在根目录中生成这些文件。因此,我不想使用以前的版本。
另一个区别是工作项目在webpack.config.js中定义“ ClientApp”的位置。在那些失败的项目中,ClientApp位置在startup.cs中定义。
更多信息:
使用sdk v2.1.201(一个有效),生成的package.json包含:
"typescript": "2.4.1",
"webpack": "2.5.1",
"webpack-hot-middleware": "2.18.2",
"webpack-merge": "4.1.0",
Run Code Online (Sandbox Code Playgroud)
使用sdk v2.1.300(失败的一个),生成的package.json包含:
"typescript": "~2.5.3"
Run Code Online (Sandbox Code Playgroud)
但不包含webpack的条目。在node_modules / .bin中,有一个版本为3.11.0的“ webpack.cmd”。
当我在VS2017开发人员命令窗口中输入“ tsc -v”时,我得到:
version 2.8.4
Run Code Online (Sandbox Code Playgroud)
更新:我在.Net SDK问题中添加了一个问题。
我被要求在那里打开Visual Studio的“ 开发人员反馈”项。他们认为这是TS …
typescript .net-core visual-studio-2017 angular spa-template
我正在尝试设置一个 SPA,我可以在其中将数据从 appsettings.json 传递到服务器渲染的客户端。我按照步骤使用新的 SpaServices 模板配置 SSR
https://docs.microsoft.com/en-us/aspnet/core/spa/angular
但是我不明白如何完成这里标记的任务
您可以通过 Angular 支持的任何方式将其传递给应用程序的其他部分
我看到使用的示例是 base_url,但似乎 base 作为 DOM 元素注入页面
<base href='/'>
Run Code Online (Sandbox Code Playgroud)
但不清楚如何以这种方式阅读其他项目。我正在测试通过应用程序是否为 Https,我的 Startup.cs 中有此部分
options.SupplyData = (context, data) =>
{
data["isHttpsRequest"] = context.Request.IsHttps;
};
Run Code Online (Sandbox Code Playgroud)
并在 main.server.ts
{ provide: 'isHttps', useValue: params.data.isHttpsRequest }
Run Code Online (Sandbox Code Playgroud)
但在 main.ts 中我迷路了,我有这样的东西
export function getBaseUrl() {
return document.getElementsByTagName('base')[0].href;
}
export function getIsHttps() {
// NO idea what needs to go here
return "";
}
const providers = [
{ provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] },
{ …Run Code Online (Sandbox Code Playgroud) c# server-side-rendering angular asp-net-core-spa-services spa-template
我正在使用最新的 react SPA .NET Core 3 模板,想知道有没有办法为客户端设置“AccessTokenLifetime”,显然该客户端是我的 SPA。
我一直在看这里https://github.com/aspnet/AspNetCore.Docs/blob/master/aspnetcore/security/authentication/identity-api-authorization.md#application-profiles我尝试了很多不同的事物。
但似乎没有设置客户端属性的方法,除了上面页面上详细介绍的几个,例如 RedirectUri、LogoutUri