问题标签 [jamstack]

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 投票
2 回答
624 浏览

saas - 如何将 YugabyteDB 设置为最终一致的分布式键值数据库?

我正在创办一家提供 Web SaaS ( https://tuilder.com/ ) 的初创公司。大计划和潜力。

我对 YugaByte 的全局复制很感兴趣。目前我已经在 BadgerDB 上构建了一个抽象,这是一个用 GoLang 编写的键值数据库。我们的抽象维护索引,有点像graphql-ish,而且非常快。是否可以将 YugaByte DB 与全局复制一起用作键值存储?

我的目标是全球分布的 KeyValue 的性能。

据我了解,写入速度会随着每个额外的复制节点而降低。那正确吗?是否可以改用速度并在节点之间建立最终一致的模型?我们正在构建 JAM 堆栈。因此,我们需要在 YugaByte 和客户端之间的服务器上建立一个身份验证层,理想情况下,该层将提供我们目前用 Go 编写的相同抽象。

将请求路由到最近的地理位置的节点之间的负载平衡怎么样?

YugaByte 平台可以实现这一切吗?

0 投票
1 回答
258 浏览

gatsby - 使用 gatsby 和 netlify 在构建时获取后在客户端上保留 api 数据

Gatsby 和 Netlify 的新手,但我有一个问题在其他地方找不到答案,可能是因为方法不对。

我正在为需要显示最后一天/周/月数据的动画视图的客户端构建一个天气应用程序,这需要向天气 API 发出多个请求以获取不同分辨率的数据,然后将其插入到可视化中setInterval 本质上。

与其在客户端发出所有这些请求,我想到的是,我可以在构建时通过计划构建获取所有数据,并每天使用这些更新的数据静态地为页面提供服务,这样可以节省 API 并降低成本。

问题是 gatsby 假设您想使用获取的数据生成 html 并使用 createPages 但在这里我只想将数据作为 json 存储在 js 包中以便在客户端呈现。

有没有办法将构建时间获取和格式化的数据放入 json 或类似文件中,并静态服务以在客户端上呈现?

0 投票
1 回答
355 浏览

git - 如何构建符合 GDPR 的基于 git 的静态页面?

在处理个人数据时,欧洲 GDPR 要求在某些情况下删除特定的个人数据“被遗忘权”。

如果基于 git 的静态页面的内容中存在个人数据,在我的理解中它将成为 git commit 历史的一部分。

如果现在要求您删除在内容中找到的个人数据,则个人数据仍将保留在提交历史记录中,因此不会被完全删除。

是否可以用 git 提交历史中的通用占位符替换旧提交(内容版本)中的个人数据?这样,人们可以删除个人数据,而不必删除整个提交历史。

0 投票
0 回答
283 浏览

javascript - 如何保护 JAMstack 应用程序中的(第 3 方)API 密钥?

所以,像往常一样,一些新的东西正在嗡嗡作响——JAMstack。我对嗡嗡的新想法的经验是它们可能有用也可能没有用,但通常不是因为支持者给出的原因,很抱歉成为悲观主义者。从 CDN 提供静态网站而不是维护服务器 - 似乎是个好主意,现在我不需要支持我自己的服务器,它不再是一个全栈应用程序。但是,让我们假设应用程序需要访问谷歌地图,例如向用户显示他们的业务方向。JAMstack 应用程序如何保护 api 密钥?让我们假设这是一个小型企业的应用程序

最简单的答案是您确实支持在加载时向应用程序发送 api 密钥的服务器。对于静态应用程序,托管公司将有一种机制来设置 unix 局部变量,这些变量可以在发送到浏览器时读取或传递到应用程序中。这是通常推荐的用于保护 api 密钥的方法。现在该应用程序不能再从 CDN 提供。

我发现的一个答案是,对于某些 api,api 密钥可能有一个限制,即它只能在特定域中使用。我认为这将在生成 api 密钥时设置。但是,引用域可能会被欺骗。

另一个答案是拥有一个允许先前机制工作的函数/lambda 服务器 - 检查调用者的域并在匹配时发出 api 密钥。无需维护,或者很少维护,因为墨菲定律始终适用。

我假设第三方api支持cors(即浏览器可以访问第三方站点)

我想听听其他想法。

0 投票
1 回答
433 浏览

wordpress - Gatsby + Wordpress 如何创建图片轮播?

我是 JAMstack 的新手,我想知道使用 Gatsby 和 Wordpress 创建图像轮播的最佳方法是什么。

0 投票
1 回答
724 浏览

amazon-web-services - 如何使用 S3 和 Namecheap 托管 SSL 静态站点?

注意:sitenamehere 不是站点名称。因个人原因编辑。

我有一个位于http://www.[sitenamehere].site.s3-website-us-west-1.amazonaws.com/的静态站点——它运行良好,可公开访问。

我想通过 sitenamehere.site 和 www.sitenamehere.site 提供它(第一个重定向到第二个)。我的理解是,我需要做 3 件事才能让它发挥作用:

  1. 通过 AWS 证书管理器获得的证书(通过 DNS 记录验证)
  2. 指向 S3 存储桶的 Cloudfront 分配
  3. 具有可公开访问的 html 的 S3 存储桶
  4. 更新了 Namecheap 上的 DNS 记录

在我看来,我拥有所有 3 个。但是当我访问该站点时,我得到了www.sitenamehere.site’s server IP address could not be found.

在 namecheap 的 DNS 面板中,我有一个 CNAME 记录:

类型:CNAME

主持人:-(_5ee8b630d994d9efexxxxxxxxxxxx原始值是,_5ee8b630d994d9efexxxxxxxxxxxx.sitenamehere.site但 Namecheap 支持告诉我只使用第一部分)

价值:_4998f8b754e7f59ce4d6xxxxxxxxxxxx.mzlfeqexyx.acm-validations.aws.

ACM 表示证书已通过验证(验证状态:成功)

下一个:云端。我有一个发行版,它的原始域名是www.sitenamehere.site.s3.amazonaws.com. 编辑原点(编辑原点屏幕)时,该值在下拉列表中可用。Origin ID: S3-www.sitenamehere.siteRestrict Bucket Access is No. 这对我来说似乎都是正确的。

下一个:S3。我在这里有几个桶,但我的目标是www.sitenamehere.site. 这就是我让 Cloudfront dist 指出的那个。它是完全公开的并且有

在其存储桶策略中。

这一切看起来应该可以工作,但事实并非如此。少了什么东西?

0 投票
1 回答
1364 浏览

go - 如何更改 Hugo 站点中的默认 url“/posts/”路由?

我创建了一个新的 Hugo 项目。默认情况下,url 路由到mysite.com/posts/my-first-post. 但是,我正在部署到帖子的 url 路径为的现有域mysite.com/blog/my-first-post。查看单个博客文章时,如何将 Hugo 配置为转到 /blog 而不是 /posts?

我试过添加:

到我的config.toml文件,然后运行hugo server --disableFastRender它以查找更改并重新启动服务器,但我无法更改 url 结构。我该怎么做呢?目前正在运行anake主题。

0 投票
3 回答
1227 浏览

javascript - Markup 在 JAMstack 中的实际含义是什么?

我一直在研究 JAMstack。据我了解,JAMstack 的意思是:

  • J-JavaScript
  • A - API
  • M - 标记

我有两个问题:

  1. 我实际上并不清楚这里的标记。它是预呈现的标记(即预呈现的 HTML)吗?

  2. 我们的办公项目是用 React 和外部 API 开发的。由于该项目是使用 JavaScript (React) 和 API 开发的,并且我们知道 React 从服务器交付预渲染块,那么它是 JAMstack 吗?

0 投票
0 回答
29 浏览

static - 我可以/应该让我的网络应用程序部分静态并从 CDN 提供它吗?

我开发了一个包含三个部分的事件网络应用程序:CMS、API 和用户搜索/查看部分。全部使用 Postgres 用 Flask 编写。

CMS 和 API 肯定需要是动态的,但面向用户的部分基本上 95% 是静态的,并且似乎可以转移到 CDN 或至少缓存在我的服务器上。虽然我没有数百万用户(哈哈),所以不需要扩展和速度,但我最近一直在研究 JAMStack 概念,我很感兴趣。我只是不知道我的应用程序是否适合。

正如我所说,大多数页面可以预先生成并存储在 CDN 上,但存在少量用户交互(基本上是用户关注事件和事件站点)。我的感觉是这部分可以通过 API 和一些简单的 javascript 来处理,同时仍然使用静态页面。但我对静态站点和 CDN 的了解还不够,无法做出决定。在阅读内容的同时,我也在寻找经验丰富的开发人员反馈。

谢谢!

0 投票
1 回答
141 浏览

angular - JAMstack SSG + Angular ...我们可以让页面的一部分静态生成而页面的一部分是动态的吗?

我正在研究Jamstack和 SSG(静态站点生成器),例如HugoScully,以便与我们的 Angular SPA 一起使用,以减少文件大小并加快加载速度。

我见过的所有示例都会生成没有动态内容的页面。有交互性,例如搜索等,但没有用户定制的内容。

我们网站的某些部分可以完全静态生成。但是,网站的其他部分具有静态页面,其中部分页面是为用户定制的。想象一个带有用户推荐的产品页面。产品信息几乎是静态的,但推荐是动态的。

我们如何创建/架构这样的东西?可以为此配置 SSG 吗?