diff --git a/packages/client-sdk/README.md b/packages/client-sdk/README.md index 07869fa84b..5223a16341 100644 --- a/packages/client-sdk/README.md +++ b/packages/client-sdk/README.md @@ -68,7 +68,7 @@ const cloud = new Cloud({ baseUrl: "https://APPID.lafyun.com", // the database proxy entry, `app` is the policy name which response for the security of database access dbProxyUrl: "/proxy/app", - getAccessToken: () => localStorage.getItem("access_token"), + getAccessToken: () => wx.getStorageSync('access_token'), environment: "wxmp", }); ``` diff --git a/packages/client-sdk/src/cloud.ts b/packages/client-sdk/src/cloud.ts index 556d42ee0a..3dd9f772c9 100644 --- a/packages/client-sdk/src/cloud.ts +++ b/packages/client-sdk/src/cloud.ts @@ -1,50 +1,48 @@ - -import { Db } from 'database-ql' -import { Request } from './request/request' -import { UniRequest } from './request/request-uni' -import { WxmpRequest } from './request/request-wxmp' -import { CloudOptions, EnvironmentType, RequestInterface } from './types' - +import { Db } from "database-ql"; +import { Request } from "./request/request"; +import { UniRequest } from "./request/request-uni"; +import { WxmpRequest } from "./request/request-wxmp"; +import { CloudOptions, EnvironmentType, RequestInterface } from "./types"; /** * class Cloud provide the interface to request cloud function and cloud database. */ class Cloud { - private config: CloudOptions + private config: CloudOptions; /** * request class by environment */ private get requestClass() { - const env = this.config?.environment - let ret = Request + const env = this.config?.environment; + let ret = Request; if (this.config?.requestClass) { - ret = this.config?.requestClass + ret = this.config?.requestClass; } else if (env === EnvironmentType.UNI_APP) { - ret = UniRequest + ret = UniRequest; } else if (env === EnvironmentType.WX_MP) { - ret = WxmpRequest + ret = WxmpRequest; } else { - ret = Request + ret = Request; } - return ret + return ret; } /** * internal request class */ - protected _request: RequestInterface + protected _request: RequestInterface; /** * Create a cloud instance - * @param config + * @param config */ constructor(config: CloudOptions) { const warningFunc = () => { - console.warn('WARNING: no getAccessToken set for db proxy request') - return "" - } + console.warn("WARNING: no getAccessToken set for db proxy request"); + return ""; + }; this.config = { baseUrl: config.baseUrl, @@ -54,53 +52,47 @@ class Cloud { primaryKey: config?.primaryKey, timeout: config?.timeout, headers: config?.headers, - requestClass: config?.requestClass - } + requestClass: config?.requestClass, + }; - const reqClass = this.requestClass - this._request = new reqClass(this.config) + const reqClass = this.requestClass; + this._request = new reqClass(this.config); } /** * Get a cloud database instance - * @returns + * @returns */ database() { return new Db({ request: this._request, - primaryKey: this.config?.primaryKey - }) + primaryKey: this.config?.primaryKey, + }); } /** * Invoke cloud function by name use POST http method * @alias alias of `invoke()` for history reason - * @param functionName - * @param data - * @returns + * @param functionName + * @param data + * @returns */ - async invokeFunction(functionName: string, data: any): Promise { - const url = this.config.baseUrl + `/${functionName}` - const res = await this - ._request - .request(url, data) + async invokeFunction(functionName: string, data?: any): Promise { + const url = this.config.baseUrl + `/${functionName}`; + const res = await this._request.request(url, data); - return res.data + return res.data; } /** * Invoke cloud function by name use POST http method - * @param functionName - * @param data - * @returns + * @param functionName + * @param data + * @returns */ - async invoke(functionName: string, data: any): Promise { - return await this.invokeFunction(functionName, data) + async invoke(functionName: string, data?: any): Promise { + return await this.invokeFunction(functionName, data); } } -export { - Cloud, - Db, - Request -} +export { Cloud, Db, Request };