jikail Posted September 30, 2020 Share Posted September 30, 2020 (edited) Bonjour à tous, Je voudrais faire une api json en passant par un controller dans un module. J'ai donc installé ce projet pour tester https://github.com/friends-of-presta/demo-cqrs-hooks-usage-module qui fonctionne parfaitement, par contre je ne comprend pas pourquoi quand j'appelle le controller par http par méthode post http://127.0.0.1/admin-dev/modules/demo-cqrs-hook-usage/22/toggle-is-allowed-for-review J'ai un [Debug] This page has moved Please use the following URL instead: http://auer-eshop.dev.avr/index.php?uri=http%253A%252F%252Fauer-eshop.dev.avr%252Fadmin-dev%252Fmodules%252Fdemo-cqrs-hook-usage%252F22%252Ftoggle-is-allowed-for-review&_token=3M2Y1gYFjzwxEzxpST6B-E38zfWa9yqH_wGZWFjoYbo Alors que je devrais avoir le retour du controller que j'ai modifié avec un exit Pourtant je sais que la route est bien mappé puisque si je fais dans le routes.yml je change POST en GET ps_democqrshooksusage_toggle_is_allowed_for_review: path: demo-cqrs-hook-usage/{customerId}/toggle-is-allowed-for-review methods: [GET] defaults: _controller: 'DemoCQRSHooksUsage\Controller\Admin\CustomerReviewController::toggleIsAllowedForReviewAction' requirements: customerId: \d+ J'ai bien MethodNotAllowedHttpException. Du coup impossible d'accéder aux routes depuis l'extérieur, je fais mal quelque chose? Merci Edited October 1, 2020 by jikail (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted September 30, 2020 Share Posted September 30, 2020 Enlevez le mode debug^^ if (defined('_PS_MODE_DEV_') && _PS_MODE_DEV_ && $_SERVER['REQUEST_URI'] != __PS_BASE_URI__) { die('[Debug] This page has moved<br />Please use the following URL instead: <a href="'.$final_url.'">'.$final_url.'</a>'); } 1 Link to comment Share on other sites More sharing options...
Eolia Posted September 30, 2020 Share Posted September 30, 2020 Ou utilisez le nom de votre domaine à la place de l'IP locale dans l'url 1 Link to comment Share on other sites More sharing options...
jikail Posted September 30, 2020 Author Share Posted September 30, 2020 (edited) Merci pour votre réponse J'ai désactivé le mode debug je n'ai plus l'erreur mais une redirection vers la page d'accueil, dans le controller j'ai /** * Catches the toggle action of customer review. * * @param int $customerId * * @return RedirectResponse */ public function toggleIsAllowedForReviewAction($customerId) { return new JsonResponse([], 404); } Cela devrait donc me retourner une 404 avec un json vide mais à la place j'ai la page d'accueil Je passe par Postman peut-être que l'url est accessible que depuis prestashop et pas depuis un client http? Je suis obligé de passer par le webservice? Auriez vous une idée? Edit Finalement je vais passer par un webservice, je pense que le soucis était l'authentification et que le controller doit-être call depuis prestashop et pas comme un webservice dommage. Merci Edited October 1, 2020 by jikail (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now