节点JS 无头客户端 AEM
见 无头客户-贾瓦 用于此客户端的 Java 变体 财务报告和审定财务报表 无头客户-js 仅用于客户端浏览器的变体.
安装
$ npm install @adobe/aem-headless-client-nodejs
使用量
创建无头客户端
const { AEMHeadless } = require('@adobe/aem-headless-client-nodejs');
配置 SDK 与 ServiceURL 和 Auth 数据( 如果需要)
const aemHeadlessClient = new AEMHeadless({
serviceURL: '<aem_host>',
endpoint: '<graphql_endpoint>',
auth: '<aem_token>' || ['<aem_user>', '<aem_pass>']
})
// Eg:
const aemHeadlessClient = new AEMHeadless({
serviceURL: AEM_HOST_URI,
endpoint: 'content/graphql/endpoint.gql',
auth: [AEM_USER, AEM_PASS]
})
使用无头客户端
承诺语法 :
aemHeadlessClient.runQuery(queryString)
.then(data => console.log(data))
.catch(e => console.error(e.toJSON()))
aemHeadlessClient.listPersistedQueries()
.then(data => console.log(data))
.catch(e => console.error(e.toJSON()))
aemHeadlessClient.persistQuery(queryString, 'wknd/persist-query-name')
.then(data => console.log(data))
.catch(e => console.error(e.toJSON()))
aemHeadlessClient.runPersistedQuery('wknd/persist-query-name')
.then(data => console.log(data))
.catch(e => console.error(e.toJSON()))
在同步/等待中:
(async () => {
let postData
try {
postData = await aemHeadlessClient.runQuery(queryString)
} catch (e) {
console.error(e.toJSON())
}
let list
try {
list = await aemHeadlessClient.listPersistedQueries()
} catch (e) {
console.error(e.toJSON())
}
try {
await aemHeadlessClient.persistQuery(queryString, 'wknd/persist-query-name')
} catch (e) {
console.error(e.toJSON())
}
let getData
try {
getData = await aemHeadlessClient.runPersistedQuery('wknd/persist-query-name')
} catch (e) {
console.error(e.toJSON())
}
})()
获取实例
检查 https://github.com/adobe/aio-lib-core-networking (中文(简体) ) 用于高级使用和默认设置
授权
若为 auth param是一个字符串,它被当作是"熊"的代号
若为 auth param 是一个数组,预期数据为 ['user','pass'] 对等,基本授权将被去除
若为 auth 未定义, 授权信头将不会设置
DEV 证书和服务证书
SDK 包含从证书配置文件获取 Auth 令牌的帮助功能
const { getToken } = require('@adobe/aem-headless-client-nodejs')
(async () => {
const { accessToken, type, expires } = await getToken('path/to/service-config.json')
const aemHeadlessClient = new AEMHeadless('content/graphql/endpoint.gql', AEM_HOST_URI, accessToken)
const data = await aemHeadlessClient.runQuery(queryString)
})()
API 参考
见生成 API 参考
捐款
欢迎捐款! 读取 贡献指南 更多信息.
许可证发放
这个项目根据Apache V2许可证获得许可. 见 自由主义 更多信息.