隐藏内容空间 ID 和访问令牌,客户端 JavaScript 文件
Hiding contentful Space id and access token, client side javascript file
我是内容新手,我正在尝试将内容从内容显示到网页。我正在使用contentful.js显示内容,我想知道当我在js文件中使用它以在网页中显示内容时,如何对公共用户隐藏这些信息(空间ID和访问令牌值)。下面是我在主 Js 文件中用于在 html 文件中显示内容的 Javascript 代码。
var client = contentful.createClient({
accessToken: 'b4c0n73n7fu1',
space: 'cfexampleapi'
});
client.entries()
.then(function (entries) {
// log the file url of any linked assets on image field name
entries.forEach(function (entry) {
if(entry.fields.SampleContent) {
document.getElementById('sample_content_block').innerHTML = entry.fields.SampleContent;
}
})
})
提前感谢!
有几种不同的方法可以做到这一点。最简单的方法是将您的空间 ID 和访问令牌移动到环境变量中。看看这篇关于如何使用Javascript的媒体文章:https://medium.com/ibm-watson-data-lab/environment-variables-or-keeping-your-secrets-secret-in-a-node-js-app-99019dfff716。
然后在您的托管服务提供商上,您将能够将环境变量设置为这些变量,并且您的代码将能够利用它们。
需要注意的有趣一点是,您放入 Contentful 的所有内容都假定为只读。公开您的内容交付 API 密钥(示例中的访问密钥)和空间 ID 并不是世界末日,就像共享备用服务的 API 密钥一样。使用您发布的CDA密钥不会使某人编辑您存储在Contentful上的任何数据,只是为了阅读它。
但是,您需要确保不要公开您的 CMA 密钥(内容管理 API 密钥),因为这将允许人们在 Contentful 中编辑和更改您的内容。
您可以使用自己的服务器(或 lambda 函数)来代理请求,然后将令牌保留在服务器端,不暴露在 Web 上。
相关文章:
- 如何将权限/授权数据传递到客户端Javascript
- 如何通过服务器上的Node从客户端JavaScript上传到谷歌云存储
- Telerik RadGrid排序客户端JavaScript jQuery
- 如何在客户端javascript中需要节点模块
- 客户端javascript没有'找不到我的网址
- 使用document.cookie将客户端javascript转换为节点模块
- Fido U2F客户端javascript源代码
- 从服务器端经典 asp 和客户端 javascript 传递字符串
- 如何将 Node.js 环境变量注入客户端 JavaScript
- RSS Feeds - 添加服务器端(PHP)或客户端(JavaScript / jQuery)
- 在客户端 Javascript 方法之后运行服务器方法
- 客户端 JavaScript 没有定义 - 但它在 HTML 源代码中.任何人都知道为什么
- Imgur 通过客户端 javascript 上传工作,但不是 node.js.慌乱了
- 突出显示与perl正则表达式匹配的HTML部分 - 在服务器端perl或客户端javascript中执行此操作
- Django设计模式-在加载时填充客户端JavaScript变量的方法
- 将Date从客户端(Javascript)发送到WebApi的最佳方式是什么
- 客户端JavaScript Facebook OAuth2实现
- 我已经从d3图表中创建了一个base64图像,需要使用客户端javascript或angular将其发布到faceboo
- 使用rest客户端/javascript验证microsoftoutlook-web(owa)
- 如何将客户端javascript返回值传递给ASP经典服务器端