---
title: 调试云函数
slug: docs-ch/local-development/local-debugging
description: 学习如何在本地使用Parse Server与Node.js集成调试云代码函数，增强调试能力。
image: https://www.back4app.com/_public/img/back4app-og.png
createdAt: 2024-01-25T15:38:39.372Z
---

在使用 Parse Cloud Code 函数创建和开发应用程序后，在测试和调试方面总有改进的空间。本指南将向您展示如何将代码编辑器与 Node.js 集成，以使用本地 Parse Server 实例调试您的函数，模拟 Back4app 环境。

## 目标

使您能够在首选代码编辑器中本地调试您的 Parse Cloud Code。

## 1 - 准备您的项目文件

如果您已经在 Back4app 上托管您的应用程序或通过仪表板设置了 Cloud Code，您的项目应遵循以下结构：

- **`cloud` 目录**: 包含 `main.js` 文件，其中定义了您的 Cloud Code 函数。
- **`public` 目录**: 存放您的静态内容，如 HTML 和 JavaScript 文件，通常包括一个 index.html 文件。

如果您的应用程序是新的或尚未部署，请复制此结构以确保本地 Parse Server 正常运行。

## 2 - 本地运行您的 Parse Server

要启动 Parse Server 的本地实例：

1. 在终端中导航到您的项目目录。
2. 运行以下命令以使用测试数据库和您的云代码启动服务器：

:::BlockQuote
parse-server --appId YOUR\_APP\_ID --clientKey YOUR\_CLIENT\_KEY --masterKey YOUR\_MASTER\_KEY --databaseURI mongodb://localhost/test --cloud ./cloud/main.js --verbose
:::

- 用随机值替换占位符值 (`YOUR_APP_ID`, 等等)。避免使用您的生产密钥。

1. 通过在浏览器中打开 `http://localhost:1337/parse` 来验证服务器是否正在运行。"unauthorized" 错误意味着服务器正在运行，但请求缺少身份验证密钥。

## 3 - 设置和测试云代码

确保您的所有云代码函数都位于 `cloud/main.js` 文件中。例如：

:::CodeblockTabs
main.js

```javascript
Parse.Cloud.define("debugTest", (request) => {
  return "Testing!";
});
```
:::

重新启动 Parse 服务器以加载新功能：

:::BlockQuote
CTRL+C # 停止服务器
parse-server --appId ... # 重新运行命令
:::

现在，使用终端中的 cURL 测试该功能:

```curl
curl -X POST \
-H "X-Parse-Application-Id: YOUR_APP_ID" \
-H "X-Parse-Client-Key: YOUR_CLIENT_KEY" \
http://localhost:1337/parse/functions/debugTest
```

如果配置正确，终端将显示响应 `"Testing!"`.

## 4- 使用 Node.js 调试代码

您可以使用 Node.js 的调试功能，结合 Visual Studio Code（或类似的 IDE），逐步调试您的函数。

### 设置 VS Code

1. 打开左侧边栏的 **运行和调试** 面板，然后点击 **创建 launch.json 文件**.
2. 选择 **Node.js** 作为环境.

这创建了一个基本的调试配置。要增强它:

1. 点击 **添加配置...** 并选择 **Node.js: 附加到进程**.
2. 选择 **通过进程ID附加** 操作并将其附加到Parse Server的节点进程.

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/OcGhOu8TVvhUkKu44bWbg_image.png)

### 调试代码

1. 打开main.js并在行return "Testing!";上设置一个 **断点**，通过点击行号左侧.
2. 运行与之前相同的cURL命令。调试器将在断点处暂停执行.
3. 在暂停时，检查调试面板中的环境变量值和调用堆栈.

这种方法让你可以详细分析代码的行为.

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/fzlOtXOTnUjcT0VujaAN__image.png)

## 结论

通过遵循本指南，您将能够在本地调试Parse集成和Cloud Code函数的所有方面，从而改善您与Back4app的开发工作流程.
