【问题标题】:How to POST a request on Moodle using POSTMAN api tool如何使用 POSTMAN api 工具在 Moodle 上发布请求
【发布时间】:2020-01-08 06:10:49
【问题描述】:

我想在 Postman 中创建一个在 Moodle 中创建类别的 API 请求。 以下是我在 Moodle 中执行的步骤:

  1. 启用的网络服务
  2. 创建了外部服务并添加了 core_course_create_categories 函数。
  3. 启用 REST 协议
  4. 已创建令牌。

这是我的 POST 网址: http://localhost/test/moodle/webservice/rest/server.php?username=admin&password=Password@1&service=mycustomservice&name=CustomCategory&parent=1&idnumber=CSTM1&description=Desc

在授权选项卡下,我选择了 Bearer Token 并添加了来自 Moodle 网络服务的 Token。

当我发送请求时,我收到 invalidtoken Invalid token - token not found 错误。

任何人都可以为此提出解决方案

Moodle 版本:3.4.8 和 Postman 版本 7.6.0

提前致谢。

【问题讨论】:

    标签: postman moodle-api


    【解决方案1】:

    您不能通过 GET 方法调用 API。 在邮递员中,您必须使用 POST 方法调用 API。 将表单数据中的令牌作为 wstoken 传递。 将您的函数称为 wsfunction。

    查看下面的屏幕截图。

    【讨论】:

    • 嗨。我试过了。但显示错误“invalidparameter Invalid parameter value detected”。请查看截图cdn1.imggmi.com/uploads/2019/9/6/…
    • 嘿,您非常接近您的解决方案。您只需要以数组格式传递类别数据。我已经在我提供的答案中更新了我的截图,请检查一下。
    • 嘿,它成功了。我必须从正文中删除“userid”才能使其工作。请查看新截图:cdn1.imggmi.com/uploads/2019/9/7/…。另外,我注意到您在 Params 和 Body 选项卡中都包含了 moodlewsrestformat,而我没有包括在内。 “参数”选项卡中是否需要它?
    • @Sarath moodlesrestformat 不是必需的,实际上这个参数是在旧的moodle版本中使用的。对于 API 函数以及如何传递其参数,您可以参考your_moodle_url/admin/webservice/documentation.php 如果我的回答对您有帮助,请标记它正确或投赞成票。谢谢。
    • 另外,您能告诉我如何使用原始 Json 格式传递参数吗?我试图将参数作为原始 Json 格式传递。但它抛出了一个错误(invalidtoken Invalid token - token not found)。请查看以下截图:cdn1.imggmi.com/uploads/2019/9/9/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 2020-11-28
    • 1970-01-01
    • 2018-09-15
    相关资源
    最近更新 更多