无服务器函数 - 输入类型
函数的输入可用以下类型进行采集:
参数
参数是在查询字符串 URL 中传递,数据是在输入的 post "form-data" 部分中传递。crmAPIRequest 映射中的 "params" 包含以下参数:它们具有请求中传递的全部信息。
在请求 URL 中使用 POSTMAN 发送参数:

在 form-data 中使用 POSTMAN 将参数作为 JSON 对象发送:

在 form-data 中使用 POSTMAN 将参数作为密钥发送:

用于映射函数中定义的自变量的任何参数,它自动进行同步。
要获取请求中使用的附加参数:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的参数
parameters = crmAPIRequestMap.get("params");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;
注:
- 请避免在函数中使用名称 "arguments" 作为自变量。这是因为名称不符可能导致一些自变量无法正常运行。
- 当通过“参数”(例如,通过 URL 的查询字符串或 form-data 传递)时,映射函数的自变量自动完成。
数据流
请求的“正文”可用来获取作为数据流传递至请求的内容。当请求方法为 POST 时,通常只使用正文。
使用 POSTMAN 作为数据流(原始数据)发送正文:

使用 POSTMAN 作为二进制文件发送正文:

要获取函数中该的整个正文部分:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的正文内容
request_body = crmAPIRequestMap.get("body");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;
在 POSTMAN 中,正文内容可作为原始数据或二进制文件进行传递。
注:
- 如果函数的自变量是通过数据流传递,则它们将不会映射至函数的自变量。
- 如果您需要编码/解码函数中的输入数据,您可使用 Deluge 中提供的加密任务。
文件内容
如果请求的内容类型为 Multipart,则将其视为一个文件。您可在请求对象中获取函数中的文件。
当前受支持的文件类型是文本文件。为了将文件作为 multipart 数据发送至函数,请用自变量名 "inputFile" 发送它。

要获取要在函数中使用的上传文件:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的文件内容
parameters = crmAPIRequestMap.get("file_content");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;
注:
- 如果函数的输入提供为“文件”,则文件中的自变量将不会映射至函数的自变量。
标头
请求的标头通常包含有关请求的附加信息。标头中提供的信息可采集到 crmAPIRequest 自变量中的 "headers" 密钥。
要获取请求的标头:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的用户信息
header_request = crmAPIRequestMap.get("headers");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;
用户信息
此密钥可用来获取有关用户及用户所在机构的信息,该用户使用 OAuth2 方法调用该函数。
要获取有关用户的信息:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的用户信息
user_info = crmAPIRequestMap.get("user_info");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;
注:
- 如果该函数作为 API 密钥进行调用,则您获得的用户信息将是超级管理员的信息,而不是其调用该函数的用户的信息。
身份验证类型和方法
这两个密钥可用来获取身份验证信息(apikey 或 oauth)和 HTTP 方法 (GET/POST)。
要获取有关身份验证类型的信息:
crmAPIRequestMap = crmAPIRequest.toMap();
// 获取请求的 HTTP 方法
user_info = crmAPIRequestMap.get("method");
// 获取请求的身份验证类型
user_info = crmAPIRequestMap.get("auth_type");
/**
这里是您的业务逻辑
**/
return crmAPIRequestMap;