Js SDK
js-client
是基于javascript语言UMD风格的Fireboom API 封装,可以在浏览器环境中使用。
引用SDK
配置基本请求头
在index.html文件中增加baseURL配置,自定义访问域名。
<script src="./index.umd.min.js"></script>
自定义请求域名
FBClient.setBaseURL('https://xxx.cc.com')
自定义请求头
FBClient.setExtraHeaders({ 'X-CUSTOM-HEADER': 'VALUE' })
查询和变更
查询
FBClient.query.GetT({input:{id:1}}).then(console.log)
变更
FBClient.mutation.CreateT({input:{name:"sss",des:"des"}}).then(console.log)
实时
实时查询
FBClient.subscription.GetT({input:{id:1},liveQuery: true}).then(async res => {
for await (const v of res) {
console.log(v)
}
})
订阅
FBClient.subscription.GetT({input:{id:1}}).then(async res => {
for await (const v of res) {
console.log(v)
}
})
订阅一次
使用subscribeOnce
运行订阅,这将直接返回订阅响应,而不会推流。适用于SSR场景。
FBClient.subscription.GetT({input:{id:1},subscribeOnce: true}, ({ data, error }) => {
console.log(data)
})
文件上传
<input type="file" id="fileInput" name="fileInput" >
<script>
const fileInput = document.getElementById('fileInput');
fileInput.addEventListener('change', (event) => {
const files = event.target.files
if (files == null) return
// 调用上传函数
FBClient.uploadFiles({
provider: 'tengxunyun',
files: files,
profile: 'avatar', // (可选)高级配置
directory:"sss", // (可选)上传目录
meta:{ // (可选)meta信息
postId:"sss"
}
})
});
</script>
身份验证
身份认证包含两种模式:授权码模式(基于cookie)和隐式模式(基于token)。
授权码模式
登录
FBClient.login('auth0');
获取用户
FBClient.fetchUser();
退出登录
FBClient.logout({
logoutOpenidConnectProvider: true,
});
隐式模式
获取Token
详情见 隐式模式 ->获取Token
使用Token
FBClient.setAuthorizationToken('<access_token>')
最后更新于
这有帮助吗?