api и безопасность сайта

Тема в разделе "Общие вопросы", создана пользователем vsemkrot, 21 сен 2022.

  1. vsemkrot

    vsemkrot Новичок

    Сообщения:
    7
    Симпатии:
    0
    всем привет, начал изучать api opencart, у меня стоит версия 3, я что то напутал в файлах или так и должно быть , если любой пользователь переходит по адресу мойсайт.ru/index.php?route=api/order/info&order_id=58 то любой человек видит заказ с id = 58, я не хочу что бы посторонние видели заказы, подскажите может я что то наделал в файлах, какой файл отвечает за то что бы была проверка по админу ?, я думаю такая ссылка должна быть видна только админу сайта!
     
  2. Blast

    Blast Активный пользователь

    Сообщения:
    124
    Симпатии:
    38
    не может любой получить доступ к апи.
    в админке Система / Пользователи / API настраиваются ключи апи, привязываются к ip-адресам и т.д.
    в контроллерах api и startup идет проверка на api_token и api_id
     
  3. vsemkrot

    vsemkrot Новичок

    Сообщения:
    7
    Симпатии:
    0
    Подскажите пожалуйста еще такой момент

    в postmen делаю запросы к api все работает, но вот запрос /index.php?route=api/shipping/method выдает ошибку
    "error": "Предупреждение: Варианты доставки недоступны!" хотя на сайте все работает хорошо и перед этим запросом делаю запросы что бы положить товар в корзину, и так же устанавливаю адрес доставки и адрес оплаты и index.php?route=api/shipping/methods получаю методы доставки

    может это зависеть от того что стоит модуль filterit ? и как победить эту ошибку ? заранее спасибо
     
  4. vsemkrot

    vsemkrot Новичок

    Сообщения:
    7
    Симпатии:
    0
    я так понимаю что в файле catalog/controller/api/shipping.php
    в функции public function method() не срабатывает условие
    if (empty($this->session->data['shipping_methods'])) {
    $json['error'] = $this->language->get('error_no_shipping');
    и выводит эту надпись,
    подскажите как то можно это проверить от чего так!? заранее спасибо
     
  5. Blast

    Blast Активный пользователь

    Сообщения:
    124
    Симпатии:
    38
    куки с phpsessid отсылаете через постман?
    если нет, то всё логично. сервак записывает методы доставки в одну сессию, а вы потом заходите с пустой и создается новая под новый запрос
     
  6. vsemkrot

    vsemkrot Новичок

    Сообщения:
    7
    Симпатии:
    0
    куки посылаются, так как делаю запрос для получения и установки методов оплаты и они срабатывают всё как нужно, а именно вот api/shipping/method выдает ошибку
     
  7. vsemkrot

    vsemkrot Новичок

    Сообщения:
    7
    Симпатии:
    0
    обнаружил вот что, стоит модуль для переключения языков на сайте - SEO мультиязык-мультирегион ver.32.3
    и если его отключаю то всё работает как нудно, а стоит включить сразу ошибка!
    видимо идет переадресация ваш модуль где то теряется сессия куки
    автор модуля не отвечает, подскажите пожалуйста как можно решить эьу проблему, хотя бы с чего начать тестировать :?