问题标签 [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.
saas - 如何将 YugabyteDB 设置为最终一致的分布式键值数据库?
我正在创办一家提供 Web SaaS ( https://tuilder.com/ ) 的初创公司。大计划和潜力。
我对 YugaByte 的全局复制很感兴趣。目前我已经在 BadgerDB 上构建了一个抽象,这是一个用 GoLang 编写的键值数据库。我们的抽象维护索引,有点像graphql-ish,而且非常快。是否可以将 YugaByte DB 与全局复制一起用作键值存储?
我的目标是全球分布的 KeyValue 的性能。
据我了解,写入速度会随着每个额外的复制节点而降低。那正确吗?是否可以改用速度并在节点之间建立最终一致的模型?我们正在构建 JAM 堆栈。因此,我们需要在 YugaByte 和客户端之间的服务器上建立一个身份验证层,理想情况下,该层将提供我们目前用 Go 编写的相同抽象。
将请求路由到最近的地理位置的节点之间的负载平衡怎么样?
YugaByte 平台可以实现这一切吗?
gatsby - 使用 gatsby 和 netlify 在构建时获取后在客户端上保留 api 数据
Gatsby 和 Netlify 的新手,但我有一个问题在其他地方找不到答案,可能是因为方法不对。
我正在为需要显示最后一天/周/月数据的动画视图的客户端构建一个天气应用程序,这需要向天气 API 发出多个请求以获取不同分辨率的数据,然后将其插入到可视化中setInterval 本质上。
与其在客户端发出所有这些请求,我想到的是,我可以在构建时通过计划构建获取所有数据,并每天使用这些更新的数据静态地为页面提供服务,这样可以节省 API 并降低成本。
问题是 gatsby 假设您想使用获取的数据生成 html 并使用 createPages 但在这里我只想将数据作为 json 存储在 js 包中以便在客户端呈现。
有没有办法将构建时间获取和格式化的数据放入 json 或类似文件中,并静态服务以在客户端上呈现?
git - 如何构建符合 GDPR 的基于 git 的静态页面?
在处理个人数据时,欧洲 GDPR 要求在某些情况下删除特定的个人数据“被遗忘权”。
如果基于 git 的静态页面的内容中存在个人数据,在我的理解中它将成为 git commit 历史的一部分。
如果现在要求您删除在内容中找到的个人数据,则个人数据仍将保留在提交历史记录中,因此不会被完全删除。
是否可以用 git 提交历史中的通用占位符替换旧提交(内容版本)中的个人数据?这样,人们可以删除个人数据,而不必删除整个提交历史。
javascript - 如何保护 JAMstack 应用程序中的(第 3 方)API 密钥?
所以,像往常一样,一些新的东西正在嗡嗡作响——JAMstack。我对嗡嗡的新想法的经验是它们可能有用也可能没有用,但通常不是因为支持者给出的原因,很抱歉成为悲观主义者。从 CDN 提供静态网站而不是维护服务器 - 似乎是个好主意,现在我不需要支持我自己的服务器,它不再是一个全栈应用程序。但是,让我们假设应用程序需要访问谷歌地图,例如向用户显示他们的业务方向。JAMstack 应用程序如何保护 api 密钥?让我们假设这是一个小型企业的应用程序
最简单的答案是您确实支持在加载时向应用程序发送 api 密钥的服务器。对于静态应用程序,托管公司将有一种机制来设置 unix 局部变量,这些变量可以在发送到浏览器时读取或传递到应用程序中。这是通常推荐的用于保护 api 密钥的方法。现在该应用程序不能再从 CDN 提供。
我发现的一个答案是,对于某些 api,api 密钥可能有一个限制,即它只能在特定域中使用。我认为这将在生成 api 密钥时设置。但是,引用域可能会被欺骗。
另一个答案是拥有一个允许先前机制工作的函数/lambda 服务器 - 检查调用者的域并在匹配时发出 api 密钥。无需维护,或者很少维护,因为墨菲定律始终适用。
我假设第三方api支持cors(即浏览器可以访问第三方站点)
我想听听其他想法。
wordpress - Gatsby + Wordpress 如何创建图片轮播?
我是 JAMstack 的新手,我想知道使用 Gatsby 和 Wordpress 创建图像轮播的最佳方法是什么。
amazon-web-services - 如何使用 S3 和 Namecheap 托管 SSL 静态站点?
注意:sitenamehere 不是站点名称。因个人原因编辑。
我有一个位于http://www.[sitenamehere].site.s3-website-us-west-1.amazonaws.com/的静态站点——它运行良好,可公开访问。
我想通过 sitenamehere.site 和 www.sitenamehere.site 提供它(第一个重定向到第二个)。我的理解是,我需要做 3 件事才能让它发挥作用:
- 通过 AWS 证书管理器获得的证书(通过 DNS 记录验证)
- 指向 S3 存储桶的 Cloudfront 分配
- 具有可公开访问的 html 的 S3 存储桶
- 更新了 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.site
Restrict Bucket Access is No. 这对我来说似乎都是正确的。
下一个:S3。我在这里有几个桶,但我的目标是www.sitenamehere.site
. 这就是我让 Cloudfront dist 指出的那个。它是完全公开的并且有
在其存储桶策略中。
这一切看起来应该可以工作,但事实并非如此。少了什么东西?
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主题。
javascript - Markup 在 JAMstack 中的实际含义是什么?
我一直在研究 JAMstack。据我了解,JAMstack 的意思是:
- J-JavaScript
- A - API
- M - 标记
我有两个问题:
我实际上并不清楚这里的标记。它是预呈现的标记(即预呈现的 HTML)吗?
我们的办公项目是用 React 和外部 API 开发的。由于该项目是使用 JavaScript (React) 和 API 开发的,并且我们知道 React 从服务器交付预渲染块,那么它是 JAMstack 吗?
static - 我可以/应该让我的网络应用程序部分静态并从 CDN 提供它吗?
我开发了一个包含三个部分的事件网络应用程序:CMS、API 和用户搜索/查看部分。全部使用 Postgres 用 Flask 编写。
CMS 和 API 肯定需要是动态的,但面向用户的部分基本上 95% 是静态的,并且似乎可以转移到 CDN 或至少缓存在我的服务器上。虽然我没有数百万用户(哈哈),所以不需要扩展和速度,但我最近一直在研究 JAMStack 概念,我很感兴趣。我只是不知道我的应用程序是否适合。
正如我所说,大多数页面可以预先生成并存储在 CDN 上,但存在少量用户交互(基本上是用户关注事件和事件站点)。我的感觉是这部分可以通过 API 和一些简单的 javascript 来处理,同时仍然使用静态页面。但我对静态站点和 CDN 的了解还不够,无法做出决定。在阅读内容的同时,我也在寻找经验丰富的开发人员反馈。
谢谢!