From a094fb413ce25813803ef05a6a7e51fdd6f47ce4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E4=BA=9A=E7=90=AA?= Date: Thu, 7 Jul 2022 12:43:57 +0800 Subject: [PATCH] docs: mock uniCloud client info --- docs/uniCloud/cf-callfunction.md | 2 +- docs/uniCloud/cloud-obj.md | 1 + docs/uniCloud/rundebug.md | 37 +++++++++++++++++++++++++++----- 3 files changed, 34 insertions(+), 6 deletions(-) diff --git a/docs/uniCloud/cf-callfunction.md b/docs/uniCloud/cf-callfunction.md index 82b4a806a..1253d3411 100644 --- a/docs/uniCloud/cf-callfunction.md +++ b/docs/uniCloud/cf-callfunction.md @@ -127,7 +127,7 @@ context对象的属性清单如下: |FUNCTION_TYPE |string |获取云函数类型,对于云函数来说,这里一定会返回`cloudfunction`,新增于HBuilderX 3.5.1。 | |FUNCTION_RUNTIME_VERSION |string |云函数sdk版本,本地调试时随HBuilderX版本变动,云端一直保持和最新HBuilderX一致(无论本地版本多少,云端只有一个最新版本的云函数sdk)。新增于HBuilderX 3.5.1 | |CLIENTIP |string |客户端IP。如果调用来源是其他服务器,会返回调用方的ip | -|CLIENTUA |string |客户端userAgent。 | +|CLIENTUA |string |客户端userAgent。注意非本地运行环境下客户端getSystemInfoSync也会获取ua参数并上传给云函数,但是云函数会从http请求头里面获取ua而不是clientInfo里面的ua | |uniIdToken |string |客户端uni-id token字符串,新增于HBuilderX 3.5.1。 | 除了上述属性,如果是uni-app客户端通过callfunction访问云函数,那么context还会追加一批客户端信息。 diff --git a/docs/uniCloud/cloud-obj.md b/docs/uniCloud/cloud-obj.md index 357fa7451..56b92d0dc 100644 --- a/docs/uniCloud/cloud-obj.md +++ b/docs/uniCloud/cloud-obj.md @@ -277,6 +277,7 @@ getClientInfo返回的信息,是在客户端的[uni.getSystemInfo](https://uni |属性名 |类型 |说明 | |-- |-- |-- | |clientIP |string |客户端ip | +|userAgent|string|客户端ua,注意非本地运行环境下客户端getSystemInfoSync也会获取ua参数并上传给云对象,但是云对象会从http请求头里面获取ua而不是clientInfo里面的ua | |source |string |调用来源,返回值见下。新增于`HBuilderX 3.5.1` | |scene |string |场景值。客户端[uni.getLaunchOptionsSync](/api/plugins/getLaunchOptionsSync.html#getlaunchoptionssync)返回的scene参数,新增于`HBuilderX 3.5.1` | diff --git a/docs/uniCloud/rundebug.md b/docs/uniCloud/rundebug.md index 48c7ecf53..71ae9fbf8 100644 --- a/docs/uniCloud/rundebug.md +++ b/docs/uniCloud/rundebug.md @@ -240,20 +240,47 @@ const hour = getOffsetDate(8).getHours() -**模拟客户端类型** +### 模拟客户端类型@mock-client-info -如果需要模拟客户端类型可以在运行参数内添加clientInfo字段 +如果需要模拟客户端类型可以在运行参数内添加clientInfo字段,完整字段列表见下方说明 -``` +```js { "otherParam": "***", "clientInfo":{ - OS: "ios" // 系统类型 ios、android - PLATFORM: "h5" // 客户端类型 app-plus、h5、mp-weixin、mp-alipay等 + // HBuilderX 3.5.1之前的版本需要传全大写的参数才可以在context内使用context.OS、context.LOCALE等 + "OS": "ios" // 系统类型 ios、android + "PLATFORM": "web", // 客户端类型 app-plus、h5、mp-weixin、mp-alipay等 + "DEVICEID": "", // 设备id + "APPID": "", // 应用DCloud AppId + "LOCALE: "", // 客户端语言 + // HBuilderX 3.5.1及更高版本无需传入大写参数,以上参数对应写法如下 + "osName": "ios" // 系统类型 ios、android + "uniPlatform": "web", // 客户端类型 app-plus、h5、mp-weixin、mp-alipay等 + "deviceId": "", // 设备id + "appId": "", // 应用DCloud AppId + "locale": "", // 客户端语言 + // HBuilderX 3.5.1及更高版本还允许模拟调用来源(context.SOURCE)、客户端ip(context.CLIENTIP)、客户端ua(context.CLIENTUA) + "source": "client", + "clientIP": "127.0.0.1", + "ua": "xx MicroMessenger/xxx" // 注意非本地运行环境下客户端getSystemInfoSync也会获取ua参数并上传给云函数,但是云函数会从http请求头里面获取ua而不是clientInfo里面的ua + // ...其他客户端信息 } } ``` +### 传入uniIdToken@mock-uni-id-token + +客户端调用云函数时自动在data内加入了uniIdToken,使用配置参数运行时也一样在参数内传入即可 + +```js +{ + "otherParam": "***", + "clientInfo":{}, + "uniIdToken": "xxxx" +} +``` + ## 断点调试云函数 > HBuilderX 3.2.10起,本地运行云函数及客户端连接本地云函数支持断点调试 -- GitLab