通过 API 发布新主题时出现 422 错误

大家好,我试图通过 API 发布一个新话题,但每次尝试使用纯文本(而非表单)时,都会收到 422 错误,并附带以下消息:

        "**action**": "create_post",
        "**errors**":[
        "标题不能为空",
        "标题过短(最少需要 5 个字符)",
        "标题似乎不清晰,大部分单词中的字母重复出现?",
        "分类不能为空"

以下是请求体:

    {
    "title": "Cannot Add Custom Rate for Retainer Rate",
    "raw":"hi",
    "category":22,
    "displayusername": "nickclark",
    "created_at":"2020-12-17"
    }

我使用的是 content-type = multipart/form-data……这是问题所在吗?我应该使用什么类型?

感谢帮助!

1 个赞

在使用 API 时,如果你看到类似“标题不能为空”的错误,但实际上你似乎已经传入了标题,这通常意味着某些数据未以正确的格式发送给 API,导致其无法读取你发送的数据。你是否发送的是 JSON 而不是实际的表单数据?

以下是创建一个主题示例的 curl 请求:

curl -i -sS -X POST "http://localhost:3000/posts.json"  \
-H "Content-Type: multipart/form-data;"  \
-H "Api-Key: 079fb2bb12d3b436bb11bde8eb58aaa9a36560fa7d79b14b3087aa40b1ebc2c4"  \
-H "Api-Username: blake.erickson"  \
-F "title=94214157b89 b723d7bc93f f40ec06495c"  \
-F "raw=e65c9465ca693efc7b676ce4d236a6a6 1978ce887069fd2b3dbd67422f151823 fcb471fe25bae2d9f2889de60edbd06b"

HTTP/1.1 200 OK
5 个赞