WP REST API自定义POST端点不起作用,出现404错误

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

我正在编写一个插件,自定义端点遇到了一些麻烦,该自定义端点从应用程序的前端(Angular)接收数据,并将通过另一个函数来过滤某些数据。我对产品数据库的GET请求工作正常,但POST仅返回404错误(如果我在Insomnia中测试端点,则为空数组)。我尝试过的解决方案包括确保设置了漂亮的永久链接,切换主题,但都无济于事。我还检查了wp-json文件,它显示在其中。该端点的代码:

function get_awesome_params(WP_REST_Request $request) {
  // question attributes from angular code
  $parameters = $request->get_params();
  return new WP_REST_Response($parameters, 200);
}

add_action('rest_api_init', function() {
  register_rest_route('awesome/v1', '/awesomeparams', array(
    'methods' => WP_REST_Server::CREATABLE,
    'callback' => 'get_awesome_params',
    'permission_callback' => function () {
      return true;
    }
  ));
});

编辑:访问页面上的错误消息是:

{
  code: "rest_no_route",
  message: "No route was found matching the URL and request method",
  data: {
    status: 404
  }
}
wordpress wordpress-rest-api
1个回答
0
投票

这没有用,因为我没有传入任何参数,并且寄存器函数中的一个小变化解决了该问题:

add_action('rest_api_init', function() {
  register_rest_route('awesome/v1', 'awesomeparams', array(
    'methods' => WP_REST_SERVER::CREATABLE,
    'callback' => 'get_awesome_params',
    'args' => array(),
    'permission_callback' => function () {
      return true;
    }
  ));
});
© www.soinside.com 2019 - 2024. All rights reserved.