Открыта возможность перехода на модули с открытым кодом! Детали

Перейти к публикации

Использует ли NeoSeo 1C api ключ Opencart (ocStore 3.0.3.7)?


Рекомендованные сообщения

Использует ли NeoSeo 1C api ключ для обмена товара в Opencart 3 (ocStore 3.0.3.7)? Проблема вот в чем - после активации модуля neoseo 1C в админ панели в заказах начала появляться ошибка "syntaxerror: unexpected token < in json at position 0, undefined index: username in /catalog/controller/api/login.php" и такая же проблема с api ключем. Насколько я знаю, то эти username и api key используются для получения и обновления товара с другого сайта, но в данном случае - это база 1С. И я так понимаю, что opencart не может понять какие username и api key он получает с базы данных и по этому выдает ошибку.

Так вот, правильно ли я понял, что neoseo 1C не использует api данные пользователей с opencart? Что он осуществляет обмены по специальным ссылками? Если все же используется api ключ, то можете подсказать как решить проблему?

P.S. NeoSeo 1C работает, есть обмен товара (но вручную), обмен цен, характеристик и т.д., в 1С заходят заказы.

Изменено пользователем kamaz_cs

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, kamaz_cs сказал:

код подправил, теперь в админ панели пишет "Не верный API ключ", вопрос остается актуальным

Здравствуйте.

Что Вы правили?

1 час назад, kamaz_cs сказал:

Проблема вот в чем - после активации модуля neoseo 1C в админ панели в заказах начала появляться ошибка

Модуль не должен на это влиять. 

 

Нужно смотреть, что конкретно за код у Вас в этих файлах. Так сказать ничего не можем.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

<?php
class ControllerApiLogin extends Controller {
	public function index() {
		$this->load->language('api/login');

		// $json = array(); - заменил эту часть
		$json = $api_info = array();

		$this->load->model('account/api');

		// Login with API Key
		if(isset($this->request->post['username'])) {
			$api_info = $this->model_account_api->login($this->request->post['username'], $this->request->post['key']);
		} elseif(isset($this->request->post['key'])) {
			$api_info = $this->model_account_api->login('Default', $this->request->post['key']);
		}

		// Login with API Key - заменил эту часть на то, что выше
		// $api_info = $this->model_account_api->login($this->request->post['username'], $this->request->post['key']);

		if ($api_info) {
			// Check if IP is allowed
			$ip_data = array();
	
			$results = $this->model_account_api->getApiIps($api_info['api_id']);
	
			foreach ($results as $result) {
				$ip_data[] = trim($result['ip']);
			}
	
			if (!in_array($this->request->server['REMOTE_ADDR'], $ip_data)) {
				$json['error']['ip'] = sprintf($this->language->get('error_ip'), $this->request->server['REMOTE_ADDR']);
			}				
				
			if (!$json) {
				$json['success'] = $this->language->get('text_success');
				
				$session = new Session($this->config->get('session_engine'), $this->registry);
				$session->start();
				
				$this->model_account_api->addApiSession($api_info['api_id'], $session->getId(), $this->request->server['REMOTE_ADDR']);
				
				$session->data['api_id'] = $api_info['api_id'];
				
				// Create Token
				$json['api_token'] = $session->getId();
				echo var_dump($json['api_token']);
			} else {
				$json['error']['key'] = $this->language->get('error_key');
			}
          // добавил это условие, чтобы формировался json и обрабатывались ошибки, а не вылетал alert об ошибке, 
          // что в json есть какой-то непредвиденый знак типа такого "<"
		} else {
			$json['error']['key'] = $this->language->get('error_key');
		}
		
		$this->response->addHeader('Content-Type: application/json');
		$this->response->setOutput(json_encode($json));
	}
}

внеся эти изменения, ошибки начали нормально обрабатываться

 

Изменено пользователем kamaz_cs

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

14 часов назад, NeoSeo Help 4 сказал:

Здравствуйте.

Что Вы правили?

Модуль не должен на это влиять. 

я не спорю, что модуль не должен влиять на работу, но я провел тест, взяв точную копию сайта, у которого не был активирован NeoSeo 1C. Прошарил все страницы заказов и нигде не вылетала никакая ошибка, а после активации модуля, на странице заказов в админ панели начал вылетать alert с ошибкой о непредвиденном токене и не известных username и api key. Как пример, ниже скинул скриншот, это ошибка с копии сайта, только не хватает там еще ошибки о api key.

 

Screenshot_1.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

09.11.2021 в 09:57, kamaz_cs сказал:

я не спорю, что модуль не должен влиять на работу, но я провел тест, взяв точную копию сайта, у которого не был активирован NeoSeo 1C. Прошарил все страницы заказов и нигде не вылетала никакая ошибка, а после активации модуля, на странице заказов в админ панели начал вылетать alert с ошибкой о непредвиденном токене и не известных username и api key. Как пример, ниже скинул скриншот, это ошибка с копии сайта, только не хватает там еще ошибки о api key.

 

Screenshot_1.jpg

Нужно смотреть непосредственно у Вас на сайте, ранее к нам не обращались с подобной проблемой. Можем предложить Вам взять консультацию нашего специалиста, для этого обратитесь в наш телеграмм-чат https://t.me/WebStudioNeoSeo1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

16 часов назад, NeoSeo Help 1 сказал:

Нужно смотреть непосредственно у Вас на сайте, ранее к нам не обращались с подобной проблемой. Можем предложить Вам взять консультацию нашего специалиста, для этого обратитесь в наш телеграмм-чат https://t.me/WebStudioNeoSeo1

Пока что это не критичная проблема, так как все работает. Ну спасибо за ответ 🙂

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

9 часов назад, kamaz_cs сказал:

Пока что это не критичная проблема, так как все работает. Ну спасибо за ответ 🙂

Всегда рады помочь, обращайтесь 😉

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...