Jump to content


Photo
- - - - -

Плагин Joomla Как Вариант Обновления Цен В Каталоге

плагин обновление цен

3 replies to this topic

#1 KVV

KVV

Posted 05 October 2020 - 16:55

Для обновления цен на сайте реализовал обмен через https-запрос методом post из 1с 7.7 Торговля и склад. Передаю объект JSON, в котором содержатся данные для обновления. Для защиты от подделки использовал уникальный идентификатор наподобие UUID вида 9af25800-d8aa-45ba-b331-46e235e25314. В коде плагина проверяется наличие и соответствие этого идентификатора. 

Вот вопрос к гуру, насколько это будет безопасным?

P.S.>Использовать выгрузку и загрузку через файлы при обновлении "по требованию" показалось не удобным. Конечно, CLI хороший и удобный вариант для автоматики по крону, но для этого надо открывать доступ по фтп или sftp, использовать winSCP, например. А так в 1Ске тыкнул кнопочку обновить и все "улетело" на сайт. Каталог небольшой 500-600 товаров всего.



#2 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 06 October 2020 - 19:53

1C и сама умеет FTP - сформировать CSV - положить на сервер - по крону импорт - нативно.

Попытка
    Лог("Начата выгрузка на ftp");
    ИмяFTPСервера               = "имя сервера";
    ПортFTPСоединения           = "21";
    ПользовательFTPСоединения   = "логин для подключения к ftp";
    ПарольFTPСоединения         =  "пароль для подключения к ftp";
    ПассивноеFTPСоединение      =  Ложь;
    Соединение = Новый FTPСоединение(ИмяFTPСервера, ПортFTPСоединения,ПользовательFTPСоединения,ПарольFTPСоединения, ,ПассивноеFTPСоединение);
    
    НайденныеФайлы = НайтиФайлы("D:\1C\SITEOBMEN\1cbitrix\", "*.*", Истина); //папка с которой все будет копировать на ftp
    Для Каждого Строка Из НайденныеФайлы
      Цикл
        Попытка
          ФаилФТП = Стрзаменить(Строка.ПолноеИмя, "D:\1C\SITEOBMEN\1cbitrix", "");
          ФаилФТП = Стрзаменить(ФаилФТП, "\", "/");
          Если Строка.ИмяБезРасширения = Строка.Имя
            Тогда
              Соединение.СоздатьКаталог(ФаилФТП);
            Иначе
              Соединение.Записать(Строка.ПолноеИмя, ФаилФТП);
          КонецЕсли;
          Лог("Фаил записан на ftp: " + Строка.ПолноеИмя);
        Исключение
          Лог(ОписаниеОшибки());
        КонецПопытки;
    КонецЦикла;
    Лог("Загрузка на ftp завершена");
  Исключение
    Лог(ОписаниеОшибки());
  КонецПопытки;

  • 0

#3 KVV

KVV
  • Topic Starter
  • Members
  • User rate: 0
  • posts: 12
  • topics: 5

Posted 06 October 2020 - 19:59

С 1С8 понятно. С 1С77 немного все по-другому. Но вопрос не в этом. С кодингом в 1С проблем особо нет )

Беспокоит безопасность моей реализации через передачу данных http-запросом с проверкой что-то вроде наличия идентификатора сессии. 

Работать работает. Похожие вещи встречал в других системах с API.



#4 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 06 October 2020 - 20:15

ну если работает - не трожь :) а так на вкус и цвет


  • 0





Also tagged with one or more of these keywords: плагин, обновление цен

Click to return to top of page in style!