标签: server-side

Angular 6 Server Side Errror:找不到模块:错误:无法解析'./dist/server/main.bundle'

我正在研究一个项目,将其更新为Angular 6.更新后,我在尝试运行服务器端渲染构建时遇到此错误

Module not found: Error: Can't resolve './dist/server/main.bundle'
Run Code Online (Sandbox Code Playgroud)

我尝试访问https://angular.io/guide/universal并将我的代码与Angular Universal中的SSR文件进行匹配.这不适合我.

似乎dist文件夹没有生成/ server文件夹,但正在创建/浏览器.我不确定为什么.

在此输入图像描述

这是我的angular.json文件

{
 "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "xilo": {
      "root": "",
      "sourceRoot": "src",
      "projectType": "application",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist/browser",
            "index": "src/index.html",
            "main": "src/main.ts",
            "tsConfig": "src/tsconfig.app.json",
            "polyfills": "src/polyfills.ts",
            "assets": [
              "src/assets",
              "src/favicon.ico"
            ],
            "styles": [
              "src/styles.css",
              "node_modules/font-awesome/css/font-awesome.min.css"
            ],
            "scripts": [
              "node_modules/moment/min/moment.min.js"
            ]
          },
          "configurations": {
            "production": {
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false, …
Run Code Online (Sandbox Code Playgroud)

server-side angular-cli angular-universal angular

14
推荐指数
1
解决办法
2875
查看次数

服务器端JavaScript会起飞吗?哪种实施最稳定?

有没有人看到服务器端JavaScript起飞?那里有几个实现,但这似乎有点延伸(如"我们可以这样做"这种态度).

我很想知道是否有人真正为服务器端编写JavaScript以及他们迄今为止的体验.

另外,哪种实施通常被认为是最稳定的?

javascript server-side

13
推荐指数
3
解决办法
1379
查看次数

自动为新文件添加svn关键字属性(服务器端)

我想在提交新文件时将svn属性(如svn:keyword = Id Date Rev Author)添加到文件中.

为此,可能有两个主要选择:

  1. 客户端:更改svn客户端配置中的autoprops
  2. 服务器端:使用commit-hooks做一些魔术

客户端并不总是令人满意,因为需要对客户端设置进行控制.我想在服务器上解决这个问题.如何才能做到这一点.

svn properties server-side pre-commit-hook version-control-keywords

13
推荐指数
1
解决办法
8644
查看次数

如何在服务器端分页中使用DataPager?

我正在尝试使用DataPager进行服务器端分页.这是我的代码

<asp:DataPager ID="pgrFooBars" PagedControlID="lvFooBars" 
    QueryStringField="page" runat="server" >
<Fields>
    <asp:NumericPagerField />
</Fields>
</asp:DataPager>
Run Code Online (Sandbox Code Playgroud)

代码背后

protected void Page_Load(object sender, EventArgs e)
{
    ConfigureBlogPostListView();
}

private void ConfigureBlogPostListView()
{
    int pageNum;
    int.TryParse(Request.Params["page"], out pageNum);
    int pageSize = 20;

    PagedList<IFooBar> FooBars = FooService.GetPagedFooBars(
        new PagingSettings(pageNum, pageSize));

    ListViewPagedDataSource ds = new ListViewPagedDataSource();
    ds.AllowServerPaging = true;
    ds.DataSource = FooBars;
    ds.MaximumRows = pageSize;
    ds.StartRowIndex = pageNum;
    //TotalCount is the total number of records in the entire set, not just those loaded.
    ds.TotalRowCount = FooBars.TotalCount;

    lvFooBars.DataSource = ds; …
Run Code Online (Sandbox Code Playgroud)

asp.net server-side datapager

13
推荐指数
2
解决办法
2万
查看次数

我应该在网站上使用Javascript SDK或PHP SDK进行facebook连接

我正在建立一个网站,通过Facebook连接验证用户,我在使用PHP SDK /服务器端流程或JS SDK /客户端流程之间徘徊.

以下是一些注意事项:

  1. 我想记录在我的服务器上的数据库(用户ID,电子邮件地址)中授权我的应用程序的所有用户
  2. 我想让用户能够使用JS SDK中FB.ui()生成的有吸引力的对话框发布到他们的墙上
  3. 我希望能够通过我的服务器在用户的墙上发布故事以响应外部事件
  4. 我想根据用户当前是否登录到Facebook来启用/禁用我网站上的某些功能

还有一些我能想到的问题.但基于这些要求,我猜我将需要使用这两个SDK.但是我应该依赖哪个SDK来进行数据库中的初始应用程序授权/新用户记录?

我对这两种情况下如何工作的想法:

JS SDK:

用户选择登录按钮,回调方法向服务器发出AJAX请求,并通过post传递经过身份验证的用户的FBID.服务器上的代码确定这是否是新用户,如果没有找到现有记录则在数据库中记录+记录access_token以允许服务器端API请求.

PHP SDK:

用户被重定向到Facebook的授权页面和脚本,在Facebook将用户重定向回我的应用程序之后执行该脚本,如果找不到该用户的现有记录,则会记录新记录.但是,如果我使用服务器端流进行身份验证,JS SDK是否能够执行对API的调用?

facebook server-side client-side facebook-graph-api

13
推荐指数
2
解决办法
6244
查看次数

如何使用Google Analytics跟踪node.js RESTful服务的使用情况?

我已经编写了RESTful node.js服务作为http://www.cross-copy.net的后端,并且不仅要跟踪Web客户端的使用情况,还要跟踪使用其他客户端(如命令行或应用程序)设备间复制/粘贴的服务.是否可以将Google Analytics JavaScript API嵌入到node.js应用程序中并进行服务器端跟踪?

google-analytics server-side node.js

13
推荐指数
2
解决办法
9218
查看次数

保存javascript生成的文档

Javascript可以操纵浏览器显示的文档,因此以下内容:

<script>
    document.write("<table><tr><td>Hola</td><td>Adios</td></tr></table>");
</script>
Run Code Online (Sandbox Code Playgroud)

将使浏览器显示一个表,就像它是原始HTML文档一样:

<table>
    <tr>
        <td>Hola</td>
        <td>Adios</td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

有没有办法保存/提供此文档内容?

目前我们使用Ext-js生成一些很好的报告,我想做的是拥有它的"text/html"版本(我的意思是,不需要javascript的东西)

因此,在页面的最后,我将添加一个按钮:"另存为blaba",文档应显示文本/纯文本版本.

我现在能想到的唯一方法是将内容写入javascript变量,如:

 var content = document.toString(); // or something magic like that.
 // post it to the server
Run Code Online (Sandbox Code Playgroud)

然后将该值发布到服务器,并让服务器显示该值.

 <%=request.getParameter("content-text")%>
Run Code Online (Sandbox Code Playgroud)

但看起来很棘手.

还有其他选择吗?

编辑

好的,我几乎得到了它.现在我只需要弹出新窗口,这样选项"你想保存它吗"

这是我到目前为止所得到的

<script>
    document.write("<div id='content'><table><tr><td>Hola</td><td>Adios</td></tr></table></div>");
    function saveAs(){
        var sMarkup =  document.getElementById('content').innerHTML; 
        var oNewDoc = document.open('application/vnd.ms-excel');        
        oNewDoc.write( sMarkup + "<hr>" );
        oNewDoc.close();
    }
</script>

<input type="button" value="Save as" onClick="saveAs()"/>
Run Code Online (Sandbox Code Playgroud)

这条线:

    var oNewDoc = document.open('application/vnd.ms-excel');        
Run Code Online (Sandbox Code Playgroud)

应指定新的内容类型,但它将被忽略.

javascript document server-side client-side html-generation

12
推荐指数
2
解决办法
3万
查看次数

如何在不破坏体验的情况下加密用户数据服务器端?

许多用户 - 包括我自己 - 希望将他们在Web服务上所做的一切加密的安全性.也就是说,他们不会在网络服务中任何人能够查看他们的帖子,信息,任务等......

在讨论其他很酷的服务时,这也是一个主要的抱怨:http://news.ycombinator.com/item?id = 1549115

由于此数据需要可恢复,因此需要某种双向加密.但除非您在每个请求中提示用户输入加密密钥,否则此密钥将需要存储在服务器上,并且加密数据的点基本上会丢失.

什么是在不降低用户体验的情况下安全加密用户数据的方法(在每个请求中要求一些密钥)?

- 更新 -

从@ Borealid的回答中,我专注于两种可能性:挑战 - 响应协议,其中没有数据(包括密码)在"清除"中发送,而非挑战 - 响应协议,其中数据(包括密码)在"清除"(尽管通过HTTPS).

挑战 - 响应协议(特别是SRP:http://srp.stanford.edu/)

它的实现似乎需要依赖于完全AJAX站点或使用Web存储.这样浏览器可以在加密期间保持质询 - 响应数据,并且还可以在不同"页面"之间保持加密密钥.(我假设在完成身份验证后,我会将它们发送回加密的加密密钥,他们会在客户端解密以获取真正的加密密钥.)

问题是我要么:

  • 完全AJAX,我不喜欢,因为我喜欢网址,不会让用户只能在一个网址上独立生活,或者
  • 我必须将数据加密密钥存储在Web存储中,基于http://dev.w3.org/html5/webstorage/即使在浏览器关闭后也会存在,并且可能是一个安全漏洞

此外,由于SRP需要多个请求(http://srp.stanford.edu/design.html),因此需要在服务器端存在一些持久性.这只是另一个难题.

传统

如果我可以清楚地传输密码和数据(虽然通过HTTPS),那么上面的客户端问题就不存在了.

在注册时,我将为用户生成一个随机的唯一加密密钥,并使用他们的密码和随机盐对其进行加密.

在数据库中,我将存储用户的密码哈希和salt(通过bcrypt),加密的加密密钥,加密密钥盐和加密iv.

在身份验证之后,我还需要使用他们的密码来解密加密密钥,以便他们可以查看和输入新数据.我只暂时存储此加密密钥,并在明确"注销"时将其删除.

这种方法存在的问题是(就像@Borealid指出的那样)邪恶的系统管理员在您登录时仍然可以查看您的数据.

用户登录时我也不确定如何存储加密密钥.如果他们在同一个数据存储中,被盗数据库会显示盗窃时登录的所有数据.

是否有更好的内存数据存储来存储这些加密密钥(并在SRP身份验证期间挑战数据)?这是Redis会有用的东西吗?

security encryption cryptography rsa server-side

12
推荐指数
1
解决办法
6694
查看次数

将服务器端变量传递给javascript的最佳实践?

我尝试过两种方法都可以工作,但感觉都不干净.

第一个是使用一些内联javascript接受视图模板中的变量,如:

var x = {{ myServersideVariable }}; 
Run Code Online (Sandbox Code Playgroud)

(在我的情况下,我使用的是Jinja2,但同样的东西适用于Django模板,.NET MVC3中的Razor,PHP中的Twig或任意数量的视图模板引擎).

显然,关于这一点的不洁部分是html页面中的javascript而不是单独的文件.

我使用的另一个选项是在一个隐藏的字段填充服务器端,然后在Javascript端使用.这感觉稍微干净,但不完全,写起来也有点麻烦.

有没有更好的解决方案,还是那些我唯一的选择?

PS
我知道JSON,事实上我有时不得不求助于第一个解决方案,如果我需要传递原语以外的东西.因此,支持传递JSON对象而不在页面上使用javascript的解决方案的奖励积分.

javascript coding-style server-side

12
推荐指数
2
解决办法
8179
查看次数

Linux上的C#服务器可伸缩性问题

我在Visual Studio 2010和Mono Develop 2.8上都开发了一个C#服务器.NET Framework 4.0

看起来这台服务器在Windows上比在Linux上表现得更好(在可扩展性方面).我使用Apache的ab工具在本机Windows(12个物理内核),8和12个内核Windows和Ubuntu虚拟机上测试了服务器可扩展性.

窗口响应时间非常平坦.当并发级别接近/克服核心数量时,它开始上升.

由于某种原因,Linux的响应时间要糟糕得多.从并发级别5开始,它们几乎呈线性增长.此外,8核和12核Linux VM的行为也相似.

所以我的问题是:为什么它在Linux上表现更差?(我该如何解决这个问题?).

请查看附带的图表,它显示了满足75%请求的平均时间作为请求并发的函数(范围栏设置为50%和100%). 作为请求并发的函数,满足75%请求的时间

我有一种感觉,这可能是由于mono的垃圾收集器.我尝试使用GC设置,但我没有成功.有什么建议吗?

一些其他背景信息:服务器基于HTTP侦听器,可快速解析请求并在线程池上对它们进行排队.线程池负责用一些密集的数学回复那些请求(计算约10秒的答案).

c# mono performance scalability server-side

12
推荐指数
1
解决办法
1688
查看次数