Q:

main.DEBUG: Request validation failed for action "Magento\Framework\App\Action\Forward\Interceptor" [] []

I add a custom module , it has a backend manager,when i add a menu in backend,302 errors
menu.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Backend:etc/menu.xsd">
    <menu>
        <add id="Magezoom_Adminmenu::adminmenu" module="Magezoom_Adminmenu" title="Magezoom" translate="title"  sortOrder="999"  resource="Magezoom_Adminmenu::adminmenu"/>
        <add id="Magezoom_Navigation::setting" title="Design" translate="title" module="Magezoom_Navigation" sortOrder="20" parent="Magezoom_Adminmenu::adminmenu" resource="Magezoom_Adminmenu::adminmenu"/>
        <add id="Magezoom_Navigation::navigation" title="Navigation" translate="title" module="Magezoom_Navigation" sortOrder="20" parent="Magezoom_Navigation::setting" resource="Magezoom_Adminmenu::adminmenu"  action="adminhtml/navigation" />
    </menu>
</config>

routes.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
    <router id="admin">
        <route id="navigation" frontName="navigation">
            <module name="Magezoom_Navigation" />
        </route>
    </router>
</config>

controller Index.php
<?php
namespace Magezoom\Navigation\Controller\Adminhtml\Index;

  class Index extends \Magento\Backend\App\Action
  {
    /**
    * @var \Magento\Framework\View\Result\PageFactory
    */
    protected $resultPageFactory;

    /**
     * Constructor
     *
     * @param \Magento\Backend\App\Action\Context $context
     * @param \Magento\Framework\View\Result\PageFactory $resultPageFactory
     */
    public function __construct(
        \Magento\Backend\App\Action\Context $context,
        \Magento\Framework\View\Result\PageFactory $resultPageFactory
    ) {
         parent::__construct($context);
         $this->resultPageFactory = $resultPageFactory;
    }

    /**
     * Load the page defined in view/adminhtml/layout/exampleadminnewpage_helloworld_index.xml
     *
     * @return \Magento\Framework\View\Result\Page
     */
    public function execute()
    {
         return  $resultPage = $this->resultPageFactory->create();
    }
  }
?>

debug.log
about 10 times
main.DEBUG: Request validation failed for action "Magento\Framework\App\Action\Forward\Interceptor" [] []

url become this:
http://magento-dev.com/admin/admin/navigation/index/key/a94a1b0e9c7dfd64a3f6cf422d5381deac7111115166375a4107dbd10c71c773/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/adminhtml/dashboard

A:

First things first, controller action should extend Magento\Framework\App\Action\Action class and implement Magento\Framework\App\Action\Http<method>ActionInterface where  is one of HTTP Request methods.
Magento uses Magento\Framework\App\Request\CompositeValidator to validate requests, on validation error you get Request validation failed for action ...
To address your issue you need to pinpoint validator that failed. In my case (with was a POST controller retrieving a data from another service) my request lacked a param isAjax = true, when I added this param to the URL (like so: http://127.0.0.1/<my_route>?isAjax=true) it solved my problem. In your case, it might be another validator so the solution is not universal.
Validators that take part in validating POST requests are:
Magento\Framework\App\Request\CsrfValidator
and
Magento\Framework\App\Request\HttpMethodValidator
Summarising:
class <MethodName> extends Magento\Framework\App\Action\Action implements Magento\Framework\App\Action\HttpPostActionInterface
{
    public function execute(): \Magento\Framework\Controller\ResultInterface|ResponseInterface
    {
        return $this->resultFactory->create();
    }
}

and the url: http://127.0.0.1/<my_route>?isAjax=true request method POST

