【问题标题】:Custom error with Parse.com Cloud Code (server) and iOS (client)Parse.com 云代码(服务器)和 iOS(客户端)的自定义错误
【发布时间】:2017-04-06 06:34:56
【问题描述】:

我有一个用 JavaScript 编写的 Parse Cloud Code,我有一个基于代码的系统,所以我有 3 种不同的模式:

  • 已找到代码但之前未使用过 - 成功
  • 已找到代码并且以前曾使用过 - 错误
  • 找不到代码 - 错误

现在,当客户端 (iOS) 获得成功时 - 一切正常,代码也正常。但是我想确定我遇到的 2 个错误并告诉用户出了什么问题(您的代码不再可用/找不到代码),但是 Parse 发送的错误代码始终是 141,所以我不知道哪个我应该向用户打印消息。

如何更改错误的错误代码/另一种方法来检测客户端/服务器端的错误是什么?

谢谢!

【问题讨论】:

  • 状态码应该根据错误的不同而不同,不是吗?
  • @AhmadF 是的,可能。但是 Parse 不允许你更改 141 状态码
  • 您可能需要传递一个额外的参数(比如说errorCode)才能识别错误。

标签: javascript ios swift cocoa-touch parse-platform


【解决方案1】:

来自https://parseplatform.github.io/docs/js/guide/#error-codes

ScriptFailed 141 云代码脚本失败。通常指向 JavaScript 错误。查看错误消息以获取更多详细信息。

FunctionNotFound 141 未找到云函数。检查指定的 Cloud 函数是否存在于您的 Cloud Code 脚本中并已部署。

JobNotFound 141 未找到后台作业。检查指定的作业是否存在于您的 Cloud Code 脚本中并已部署。

SuccessErrorNotCalled 141 成功/错误未被调用。一旦调用 response.success() 或 response.error(),云函数将返回。一旦调用 status.success() 或 status.error(),后台作业将同样完成执行。如果函数或作业从未到达任何成功/错误方法,则将返回此错误。当函数没有正确处理错误响应时,可能会发生这种情况,从而阻止代码执行到达 success() 方法调用。

MultupleSuccessErrorCalls 141 不能多次调用成功/错误。一旦调用 response.success() 或 response.error(),云函数将返回。一旦调用 status.success() 或 status.error(),后台作业将同样完成执行。如果函数或作业在单个执行路径中多次调用 success() 和/或 error(),则会返回此错误。

从上面看,您可能会在函数运行期间发生 Javascript 错误。调用时,您可能拼写错误的函数名称。您可能会忘记调用 response.success() 来正确关闭该函数。或者您可能多次调用 response.success() / response.error(),请确保在遵循代码逻辑时,您只为每条路径点击其中一个。

如果您可以发布您的云代码的代码,我们或许可以为您提供进一步的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-27
    • 2010-11-25
    • 1970-01-01
    • 2019-08-13
    相关资源
    最近更新 更多