Node.js Smartsheet 的查询参数 API
Node.js Query Parameters for Smartsheet API
我正在尝试使用 Node.js SDK 通过 get-sheet 请求 smartsheet.sheets.getSheet(options) 发送 include
参数。 API 文档对如何在 API 调用中添加 include
参数含糊不清。
我找到了一个 Smartsheet 开发者博客 post Demystifying Query Parameters in the Smartsheet API,它提供了更多指导,但是他们提供的 Node.js 示例代码无效 javascript:
// Set options
var options = {
queryParameters: {
include: "attachments",
include: "source",
includeAll: true
}
};
// List sheets
smartsheet.sheets.listSheets(options)
.then(function(response) {
...
在上面的代码中,最后一个 include
查询参数将覆盖所有先前的值,您将留下一个 options
变量,该变量丢失了 "attachements" 参数:
queryParameters: {
include: "source",
includeAll: true
}
对我来说,显而易见的解决方案是 include
采用如下数组:
include: ["attachments", "source"],
有什么建议吗?
在使用 SDK 之外,include
查询字符串所需的任何值都作为逗号分隔列表添加到 URL。 SDK 将采用您为 queryParameters
对象的 include
参数提供的值并将其添加为 include
查询字符串的值并将其附加到 URL。
与其在 queryParameters
对象中多次提供 include
参数或提供一个数组,不如为 include
提供单个 string
值以及您希望使用的所有选项逗号分隔。
例如,要求包含 source
信息和 attachments
的 GET Sheet
请求如下所示:
const options = {
id:<SHEET_ID>,
queryParameters : {
include: 'source,attachments',
includeAll: true
}
}
smartsheet.sheets.getSheet(options)
.then(sheet => {
console.log(sheet);
})
.catch(err => {
console.log(err);
})
请注意,includeAll
查询字符串适用于 pagination
,可以单独使用以使 sheet 的所有行都包含在响应中。
此外,如果您在控制台中 运行 测试请求并在使用访问令牌创建 Smartsheet 客户端时设置 logLevel: 'info'
,您可以看到 URL 用于请求在 sheet 数据响应上方打印出来,它将向您展示 URL 的结构。
我正在尝试使用 Node.js SDK 通过 get-sheet 请求 smartsheet.sheets.getSheet(options) 发送 include
参数。 API 文档对如何在 API 调用中添加 include
参数含糊不清。
我找到了一个 Smartsheet 开发者博客 post Demystifying Query Parameters in the Smartsheet API,它提供了更多指导,但是他们提供的 Node.js 示例代码无效 javascript:
// Set options
var options = {
queryParameters: {
include: "attachments",
include: "source",
includeAll: true
}
};
// List sheets
smartsheet.sheets.listSheets(options)
.then(function(response) {
...
在上面的代码中,最后一个 include
查询参数将覆盖所有先前的值,您将留下一个 options
变量,该变量丢失了 "attachements" 参数:
queryParameters: {
include: "source",
includeAll: true
}
对我来说,显而易见的解决方案是 include
采用如下数组:
include: ["attachments", "source"],
有什么建议吗?
在使用 SDK 之外,include
查询字符串所需的任何值都作为逗号分隔列表添加到 URL。 SDK 将采用您为 queryParameters
对象的 include
参数提供的值并将其添加为 include
查询字符串的值并将其附加到 URL。
与其在 queryParameters
对象中多次提供 include
参数或提供一个数组,不如为 include
提供单个 string
值以及您希望使用的所有选项逗号分隔。
例如,要求包含 source
信息和 attachments
的 GET Sheet
请求如下所示:
const options = {
id:<SHEET_ID>,
queryParameters : {
include: 'source,attachments',
includeAll: true
}
}
smartsheet.sheets.getSheet(options)
.then(sheet => {
console.log(sheet);
})
.catch(err => {
console.log(err);
})
请注意,includeAll
查询字符串适用于 pagination
,可以单独使用以使 sheet 的所有行都包含在响应中。
此外,如果您在控制台中 运行 测试请求并在使用访问令牌创建 Smartsheet 客户端时设置 logLevel: 'info'
,您可以看到 URL 用于请求在 sheet 数据响应上方打印出来,它将向您展示 URL 的结构。