【问题标题】:Active Collab User Invite API Script Error email_addresses not found in arrayActive Collab User Invite API Script Error email_addresses not found in array
【发布时间】:2018-01-16 09:47:55
【问题描述】:

在这篇文章中解释了如何通过 API 邀请人:

Active Collab send Email after User create

我创建了我的身份验证令牌并使用 Powshell 尝试了这个 API/JSON 请求:

Invoke-RestMethod -Method Post -Headers $headers -Uri "https://pmo.lukad.net/api/v1/users/invite"  -Body '{email_addresses:["webmaster@lukad.com"],role:"Member"}'

我收到此错误:

Script failed! Last error: {"type":"InvalidParamError","message":"'email_addresses' not found in array","code":0,"file":"\/var\/www\/pmo\/activecollab\/5.13.133\/angie\/functions\/general.php
","line":826,"trace":"#0 /var/www/pmo/activecollab/5.13.133/modules/system/controllers/UsersController.class.php(134): array_required_var(Array, 'email_addresses'.....

我不确定这个脚本有什么问题。我已经试过了,没有紧箍咒[]

【问题讨论】:

    标签: json api activecollab


    【解决方案1】:

    该正文看起来不像是有效的 JSON。 JSON 非常简单,但也非常严格。 PHP 中的 JSON 解析器从不尝试修复内容,它只是抛出一个错误(更具体地返回 false)。

    这是一个有效的 JSON:

    {"email_addresses":["webmaster@lukad.com"],"role":"Member"}
    

    如果您手动编写 JSON,可以使用 https://jsonlint.com 等服务来验证 JSON,以避免此类错误。

    【讨论】:

    • 好的,谢谢 - 在我的 Powershell 脚本中解决了它,只需使用正确的引用规则。@"{"email_addresses":["webmaster@lukad.com"],"role":"Member"}" @
    • 太棒了。如果对您有帮助,请点赞并接受答案。
    猜你喜欢
    • 2023-02-15
    • 2021-07-02
    • 2015-11-26
    • 1970-01-01
    • 2019-04-16
    • 2022-12-19
    • 1970-01-01
    • 2022-01-09
    • 1970-01-01
    相关资源
    最近更新 更多