在 CloudCode 的 Back4App 解析服务器上安装 NPM 时出错

问题描述 投票:0回答:1

我正在尝试在我的应用程序上设置 CloudCode,该应用程序使用 Parse 以便能够使用 Ayrshare 发布到社交媒体平台。我已经完成了他们的设置,获取了我的 API 密钥,并尝试按照说明在 Back4App 上安装所需的 NPM,但在运行此作业时,我在 Back4App 上为我的应用程序安装 NPM

'social-post-api'
时遇到了问题立即失败。我的代码和信息下方有错误。自从我设置作业以来,有时仪表板中的所有 CloudCode 作业都会消失,所以我真的不确定这里发生了什么。

解析版本:2.8.4

在 CloudCode package.json 下我有这个:

{
  "dependencies": {
    "axios": "^0.24.0",
    "jsdom": "^17.0.0",
    "parse-html": "^1.3.2",
 "social-post-api": "*",    
    "moment-timezone": "^0.5.32"
  }
}

根据 Back4App 的添加 NPM 的文章和视频,这就是我应该做的。

在 main.js 中,我有以下内容(还有其他不相关的工作已经正常运行了一年多,所以我排除了这些,只知道还有其他工作):

const SocialPost = require('social-post-api');
Parse.Cloud.job('postToSocialMediaJob', async (request) => {
  const { params, job } = request;

  // Live API Key
  const social = new SocialPost("MYKEYISHERE");  // Replace with your Ayrshare API key

  try {
    const postResponse = await social.post({
      "post": "Today is a great day!",
      "platforms": ["facebook"],
      "mediaUrls": ["https://img.ayrshare.com/012/gb.jpg"],
    });
  
    if (postResponse) {
      job.success(`Job completed successfully: ${JSON.stringify(postResponse)}`);
    } else {
      job.error("No response data from Ayrshare API");
    }

  } catch(error) {
    console.log(error);
    job.error(`Job failed due to error: ${error.message}`);
  }
});

当我点击“立即运行”时,它立即失败,我得到的唯一结果是:

2024-01-31T21:24:45.093Z - 
Error loading your cloud code:
 Error: Cannot find module 'social-post-api'
Require stack:
- /usr/src/app/data/cloud/main.js
- /usr/src/app/cloudCodeWrapper.js
- /usr/src/app/node_modules/parse-server/lib/ParseServer.js
- /usr/src/app/node_modules/parse-server/lib/index.js
- /usr/src/app/src/back/app.js
- /usr/src/app/src/back/server.js
- /usr/src/app/src/back/index.js
- /usr/src/app/index.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (/usr/src/app/data/cloud/main.js:5:20)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
node.js npm parse-platform parse-cloud-code back4app
1个回答
0
投票

您似乎正在尝试安装不存在的“parse-html”模块版本。

请在此处检查可用版本:https://www.npmjs.com/package/parse-html?activeTab=versions

© www.soinside.com 2019 - 2024. All rights reserved.